某些字段插入的FK错误

时间:2013-02-14 07:20:38

标签: c# sql

这是我的option_table

OptionID  QuestionID  optionName OptionStatus  count Questioncount  percentage
  30          33          a          1            4      8             50
  31          33          b          1            4      8             50    <-----
  71          48          k          1            3      7             42
  72          48          p          1            4      7             58    <-----

这里我试图将一些值插入到voting_table

罚款插入

insert into Voting_Table (QuestionID,OptionID)values('33','31')

(1行受影响)

尝试插入与上面相同的另一个

insert into Voting_Table (QuestionID,OptionID)values('48','72')

但显示错误

  

消息547,级别16,状态0,行1 INSERT语句冲突   使用FOREIGN KEY约束“FK__Voting_ta_ Optio _67B44C51”。该   数据库“webdhabaordering_10-10-12”表中发生冲突   “sqldbarv2008.Options_table”,列'OptionID'。声明有   已被终止。

我怎样摆脱这个问题?非常感谢您的宝贵意见。

2 个答案:

答案 0 :(得分:1)

您似乎有一些名为 Options_table 的选项表,其中没有主键可能被命名为“选项ID”值72.

这就是出错的原因。

更多关于中小学的研究。

http://www.w3schools.com/sql/sql_foreignkey.asp

答案 1 :(得分:1)

是不是说sqldbarv2008.Options_table中的OptionID冲突意味着不存在。可能你还没有把你的最后一行提交到选项表呢?如果发生这种情况,它在视图中可见,但是在您提交之前,基础数据库表没有获得该值。