Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MySQL中的一个查询中将外键更新为现有值_Mysql_Sql_Foreign Keys - Fatal编程技术网

如何在MySQL中的一个查询中将外键更新为现有值

如何在MySQL中的一个查询中将外键更新为现有值,mysql,sql,foreign-keys,Mysql,Sql,Foreign Keys,我有三张桌子: A: id, name B: id, name AB: id, id_a, id_b 表AB将A链接到B,对于这两个约束,更新级联上的和删除级联上的。现在我发现实际上B中id为5的记录与id为7的记录是重复的,两者都被表AB引用 如何将AB中引用B5的所有记录更新为B7?显而易见的解决方案是一个UPDATE查询,但我想要一个更快的方法,以防有更多的表引用BUPDATE是如何更新SQL中的记录的。“更快的方法”可能是什么意思?您是否在问如何找到引用B.id的所有表,以便能够更新它

我有三张桌子:

A: id, name
B: id, name
AB: id, id_a, id_b
AB
A
链接到
B
,对于这两个约束,更新级联上的
和删除级联上的
。现在我发现实际上
B
中id为5的记录与id为7的记录是重复的,两者都被表
AB
引用


如何将AB中引用
B
5的所有记录更新为
B
7?显而易见的解决方案是一个
UPDATE
查询,但我想要一个更快的方法,以防有更多的表引用
B

UPDATE
是如何更新SQL中的记录的。“更快的方法”可能是什么意思?您是否在问如何找到引用
B.id
的所有表,以便能够更新它们?我必须为每个表运行更新,有没有办法在一个查询中完成?