0

我的数据库中有两个表。TableOnetheKey主键。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 语句与 FOREIGN KEY 约束“FK_TableTwo_TableOne”冲突。冲突发生在数据库“MyDB”、表“dbo.TableOne”、列“theKey”中。

如果我不触摸,您能否解释一下为什么会出现此错误TableOne

谢谢。

4

1 回答 1

1

您正在尝试设置为引用表中不存在TableTwo.theKey的值,这就是错误的意思。TableOne

所以你需要检查为什么会发生这种情况——你从哪里选择新值?为什么它是一个(还)不存在的值TableOne

于 2012-10-29T12:44:12.887 回答