[英]Inserting a C# record into a table with multiple foreign keys in SQL Server
[英]Inserting a record into a database with looping foreign keys
我有这种关系:
其中CurrentVersionID
指向游戏的当前活动版本。
在ArcadeGameVersion
, GameID
属性指向关联的ArcadeGame
记录。
问题是,我不能插入任何一条记录:
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_ArcadeGame_ArcadeGameVersions". The conflict occurred in database "Scirra", table "dbo.ArcadeGameVersions", column 'ID'.
这是格式错误的数据结构吗? 否则,克服此问题的最佳解决方案是什么?
似乎形成不良。 我看不到您为什么需要此循环参考。 我只会使用一个带有其他字段CurrentVersion和UploadDate的表ArcadeGame。 您可以根据自己的需要,例如基于UploadDate进行查询。 如果您解释要从该数据库获取的内容,答案可能更加具体。
如果您需要这种结构,则可以使用此结构。.假设ID是身份字段,我相信您将需要分5个步骤进行操作:
SELECT @arcadeGameId = SCOPE_IDENTITY()
您(很可能)希望在交易中执行上述操作。
如果这些ID不是标识字段,并且您提前知道了这些值,则通常可以执行与上述相同的步骤,但是可以跳过SELECT SCOPE_IDENTITY()步骤。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.