sqlserver中的外键约束

sqlserver中的外键约束,sql,sql-server,database,Sql,Sql Server,Database,我必须将个人信息插入到通过SQL Server运行的数据库中,并且我不断收到外键约束冲突 我试图将信息插入名为Person.Person的表中,但它表示问题发生在名为Person.BusinessEntityID的表中。BusinessEntityID列在两个表中,因此我必须同时更新两个表才能使其工作吗 我还注意到BusinessEntityID值与数据库中的行号相对应,因此是否可以设置一个与表中的行号相等的值 谢谢大家! 您必须首先将该值放入“parent”表中。不幸的是,SQL Server

我必须将个人信息插入到通过SQL Server运行的数据库中,并且我不断收到外键约束冲突

我试图将信息插入名为Person.Person的表中,但它表示问题发生在名为Person.BusinessEntityID的表中。BusinessEntityID列在两个表中,因此我必须同时更新两个表才能使其工作吗

我还注意到BusinessEntityID值与数据库中的行号相对应,因此是否可以设置一个与表中的行号相等的值


谢谢大家!

您必须首先将该值放入“parent”表中。不幸的是,SQL Server不支持延迟约束检查,因此顺序很重要。此外,SQL Server中没有神奇的“行数”-您是指“生成的标识列值”吗?如果是,请参阅“获取上次身份插入的值”或“插入…输出”。明白了,因此我必须将businessEntityID插入Person.businessEntityID,然后才能将我的信息插入Person.Person表?是的,我指的就是这个。所有数据都是按数字顺序排列的,所以我很好奇,我必须做些什么才能使其与我在第一步中添加的值保持一致,这是为了找出它是否真的是父关系上的一个标识列——如果不是,则找出这些数字之前是如何生成的。看看它是不是一个标识列,或者是一个填充了计算列/触发器的列,然后你需要做一些挖掘。啊,好的,谢谢你的帮助!