mysql更新外键值_MYSQL更新所有外键值

我有两个相同的表位于两个相同的数据库(具有不同的名称).我想合并这两个表,但他们的主键在其他表中使用,

这些表看起来像这样:

表A.

id column1 column2 column3

___ ________ _______ ________

1 text text text

2 text text text

3 text text text

表B.

id column1 column2 column3

___ ________ _______ ________

2 text text text

3 text text text

4 text text text

链接到表A的表

链接A.

id column1 tableA_ID

___ ________ _______

1 text 2

2 text 3

3 text 4

链接B.

id column1 tableA_ID

___ ________ _______

1 text 3

2 text 3

3 text 2

请注意,这些表具有相同的id,这意味着当我进行合并时,我必须更改第二个表的id.请记住,第二个表的主键用于其他表.

我写了这个查询来合并这两个表:

INSERT INTO db_A.`Table_A`(`column2`,`column3`)

SELECT `column2`,`column3` FROM db_B.`Table_B`;

此查询将正确地将第二个表的记录复制到第一个表.

现在我想移动与表B链接的表的数据,我可以使用相同的查询,但现在外键不匹配,因为它们链接的ID已被更改.

如何更新它们以便ID再次匹配?

注意:我没有对这些表的ON UPDATE CASCADE约束

我希望这是有道理的,我会尝试改进这个问题,以便每个人都理解它.

数据库信息

Type : MySQL

Engine: MyISAM

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值