我有两个表有以下字段:
表1:
学生大师
字段:
stu_id(primary key)
name
class
doc upload
sub_id(foreign_key)
表2:
主题
字段:
sub_id(primary key)
subject name
但是当我在表单中插入条目时,会出现以下错误。
INSERT语句与FOREIGN KEY约束“FK__student_m__sub_i__0C85DE4D”冲突。冲突发生在数据库“test2”,表“dbo.subject”,列'sub_id'**
请帮助我错在哪里?
答案 0 :(得分:2)
因为你试图在Student Master
的sub_id中插入一个Subject
表中不存在的值(Subject
表中没有引用)
如果这些是第一条记录,请确保首先插入Subject
,然后插入Student Master
答案 1 :(得分:0)
这是因为您在Student Master
表中插入记录sub_id
表subject
上没有sub_id
。请记住,您已将Student Master
subject
表指定为Student Master
表中的外键。这也意味着subject
表依赖于{{1}}表。这打破了参照完整性。
答案 2 :(得分:0)
FK的工作方式是它不能在该列中具有值,该值也不在引用表的主键列中。
因为它是一个外键约束,它告诉您试图在表中插入的值,而不是引用表中的值。
因此,首先必须确保在Student
表中插入sub_id
表格中subject
可用。
编辑:
要纠正它在Sql server management studio中尝试此命令:
sp_help 'dbo.subject'
答案 3 :(得分:0)
您需要先插入主记录,然后再插入子记录。 首先在Student Master表中插入记录,然后尝试在Subject表中插入。 如果您将插入声明发给我,将会对您有所帮助。