有谁知道是否有更快的方法来编辑表中具有外键的记录(在 sql server 中).. 我会解释.. 我有大约 5 个表,它们有自己的 ID,但使用外键链接在一起...
因此我需要更改外键(在我的情况下是合同号),但我必须将每条记录复制到新记录并以这种方式进行编辑......
好像我尝试编辑合同号一样,它给了我关联的标准错误并违反了外键等
肯定有更好的方法吗?
有任何想法吗?
有谁知道是否有更快的方法来编辑表中具有外键的记录(在 sql server 中).. 我会解释.. 我有大约 5 个表,它们有自己的 ID,但使用外键链接在一起...
因此我需要更改外键(在我的情况下是合同号),但我必须将每条记录复制到新记录并以这种方式进行编辑......
好像我尝试编辑合同号一样,它给了我关联的标准错误并违反了外键等
肯定有更好的方法吗?
有任何想法吗?
您是在谈论更改PK然后更新所有Fks吗?在这种情况下,启用级联更新,这将自动与删除相同,您启用级联删除
删除级联
指定如果尝试删除具有由其他表中现有行中的外键引用的键的行,则包含这些外键的所有行也将被删除。如果还对目标表定义了级联引用操作,则还会对从这些表中删除的行执行指定的级联操作。
更新级联
指定如果尝试更新行中的键值,其中键值由其他表中现有行中的外键引用,则所有外键值也将更新为为键指定的新值。如果级联引用操作
我不是 SQL 专家,但你不能设置类似 ON UPDATE CASCADE 的东西来在主键更改时自动更新外键吗?
或者尝试禁用完整性约束,进行更改并尝试重新启用约束。基本上,如果你没有做对,那么你会得到一个错误(不能启用会被违反的约束)。