【发布时间】:2012-04-19 06:10:32
【问题描述】:
我想更改 Postgres 上两行的 ID,以切换它们。它们已经被定义为外键,所以我不能使用第三个数字来进行切换。
如何在一个 SQL 查询或事务中执行此操作?
例子:
UPDATE mytable SET id=2 WHERE ID=1;
UPDATE mytable SET id=1 WHERE ID=2
【问题讨论】:
-
当您拥有事务完整性时,您不需要在一行中完成!!
-
你是说修改后id=1的记录需要保持id=1的链接吗?即你不想改变依赖表?
-
除了更改 ID 之外,您可以使用更改所有其他属性的解决方案吗?
-
与this question密切相关。
-
交换内容而不是交换标识符怎么样?
标签: sql postgresql