我的数据库里有两张桌子。TableOne有theKey主键。TableTwo有一个外键theKey,它引用TableOne中相应的列。现在我正在尝试更新theKey中的TableTwo
UPDATE TableTwo
SET theKey = NewIk
FROM TableTwo W
JOIN TableThree D ON W.theKey_backup = D.OldIk
WHERE dt >= '2012-05-01'但我收到以下错误:
UPDATE语句与外键约束"FK_TableTwo_TableOne“冲突。冲突发生在数据库"MyDB“、表"dbo.TableOne”、列“键”中。
如果我不碰TableOne,你能解释一下为什么会出现这个错误吗?
谢谢。
发布于 2012-10-29 12:44:12
您正在尝试将TableTwo.theKey设置为在引用表中不存在的值,TableOne --这就是错误的意思。
因此,您需要检查为什么会发生这种情况--您从哪里选择新值?为什么它是TableOne中不存在的值?
https://stackoverflow.com/questions/13121831
复制相似问题