Mysql 主键更改后使用更新重构外键

Mysql 主键更改后使用更新重构外键,mysql,primary-key,Mysql,Primary Key,我们遇到了一个缺少主键的问题。它被设置为一个有意义的值,以便于数据输入,因为所有数据最初都是直接添加的。但是,现在并非所有条目中都存在有意义的值。所以现在我们转向一个自动生成的,没有意义的键。但我必须更新数据库以反映这一点 因此,我的products表包含列serial(原始键)和Id(新主键)。“我的零件”表有两列FK_序列(旧FK)和FK_产品(新FK,当前所有条目均设置为0) 是否有UPDATE语句将遍历零件表并将FK_产品设置为产品表中的Id值,其中serial=FK_serial UP

我们遇到了一个缺少主键的问题。它被设置为一个有意义的值,以便于数据输入,因为所有数据最初都是直接添加的。但是,现在并非所有条目中都存在有意义的值。所以现在我们转向一个自动生成的,没有意义的键。但我必须更新数据库以反映这一点

因此,我的products表包含列serial(原始键)和Id(新主键)。“我的零件”表有两列FK_序列(旧FK)和FK_产品(新FK,当前所有条目均设置为0)

是否有UPDATE语句将遍历零件表并将FK_产品设置为产品表中的Id值,其中serial=FK_serial

UPDATE parts 
JOIN products
ON parts.FK_serial = products.serial
SET parts.FK_product = products.Id;