首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用r2dbc-postgresql的事务

使用r2dbc-postgresql的事务
EN

Stack Overflow用户
提问于 2020-09-08 15:57:18
回答 1查看 292关注 0票数 1

我正在尝试生成一个在一个事务中同时执行2个postgresql命令的代码。我的DB中有2个规则,规则顺序不同,我想在它们之间切换规则顺序。我使用的是r2dbc-postgresql (v0.8.4)和spring-data-r2dbc (v1.1.1)。

我已经定义了DatabaseClient和TransactionalOperator,并尝试使用这段代码:

代码语言:javascript
复制
public Mono<Void> insertRows() {
    return databaseClient.execute("update rules set rule_order = 2 where rule_order = 1")
            .fetch().rowsUpdated()
            .then(databaseClient.execute("update rules set rule_order = 1 where rule_order = 2")
                .fetch().rowsUpdated())
            .then()
            .as(transactionalOperator::transactional);
}

但结果是命令一个接一个地运行,所以我使用规则order = 1结束了这两个规则。

我做错了什么,我如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2020-09-08 17:49:48

不知道你在期待什么。

第一条语句将规则行更新为rule_order=2(update rules set rule_order = 2 where rule_order = 1)。第二个更新规则为rule_order=1 (update rules set rule_order = 1 where rule_order = 2)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63789546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档