![](/img/trans.png)
[英]C# - SQL Server: INSERT statement conflicted with FOREIGN KEY constraint - Unhandled Exception
[英]C#, SQL Server: The INSERT statement conflicted with the FOREIGN KEY constraint
我正在使用C#,实体框架和SQL Server编码数据库访问方法。
更新数据库后,我开始收到奇怪的“ INSERT语句与FOREIGN KEY约束冲突 ”错误消息。 在Visual Studio中执行单元测试时,我注意到只有一个数据库表A的错误。
我的单元测试的场景如下:
结果, INSERT语句给出FOREIGN KEY约束错误消息。 插入 每个FK时 INSERT都会失败,并且只有在我从表A中删除所有FK之后, INSERT才会成功。
因此,我认为我的SQL Server或表A可能有问题。
这是表A的一些统计数据
我很高兴收到有关此项目进展的任何提示!
谢谢你的帮助。 我想我找到了解决问题的办法。
我正在使用DeZing for Databases工具进行数据库设计以及创建数据库创建脚本。
我已经从表A到另一个表绘制了一个关系。 该关系具有如下连接的两个键
表A <--------------------------------> CustomerAddress
PK引导
FK CustomerAddressGuid <-------> PK Guid
FK CustomerGuid <------------------> FK CustomerGuid
现在订购了DeZing for Databases工具
FK CustomerGuid <------------------> FK CustomerGuid (首先是FK关系)和
FK CustomerAddressGuid <-------> PK Guid (下一个PK关系)
因此,即使值正确,INSERT也失败,因为FK-FK关系早于PK-FK。
不幸的是,DeZing工具无法自动解决此情况,并且在该工具中不容易看到关系顺序。
解决方案是在工具中重新排列链接属性的顺序( 首先是PK属性 ),然后重新创建数据库创建脚本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.