gpt4 book ai didi

MySQL 增量更新所有表上的匹配列

转载 作者:行者123 更新时间:2023-11-29 11:21:47 24 4
gpt4 key购买 nike

我想知道一个 SQL 查询,无论我是否设置第一个值,它都会增量更新所有表上的匹配列。

Table A
`ACCOUNT_NO` = 10090
`ACCOUNT_NO` = 10091

Table B
`ACCOUNT_NO` = 10090
`ACCOUNT_NO` = 10091

Table C
`ACCOUNT_NO` = 10090
`ACCOUNT_NO` = 10091

更改为---

Table A
`ACCOUNT_NO` = 12090
`ACCOUNT_NO` = 12091

Table B
`ACCOUNT_NO` = 12090
`ACCOUNT_NO` = 12091

Table C
`ACCOUNT_NO` = 12090
`ACCOUNT_NO` = 12091

最佳答案

如果您的 ID 通过声明为 on updatecascade 的外键连接(请参阅文档 here ),那么您可以更新主表中的值,它们将传播到其他表:

update a
set account_no = account_no + 2000;

如果新数字与旧数字冲突,这可能会产生错误。如果发生这种情况,有很多方法可以解决。

话虽如此,这样的操作是高度可疑的。可能有一些非常罕见的例子需要这样做,但一般来说,不应修改主键。如果正在修改某列,则它是实体的属性,而不是实体的标识符

关于MySQL 增量更新所有表上的匹配列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38791888/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com