我检查过这两个表都没有任何外键。我检查过他们都有类型uniqueidentifier的Id。我吟唱剧本并得到这个错误。
ALTER TABLE [dbo].[Records]
ADD CONSTRAINT [FK_dbo.Records_dbo.Users_UserId]
FOREIGN KEY ([UserId])
REFERENCES [dbo].[Users] ([Id])
--ON DELETE CASCADE
ALTER TABLE语句与FOREIGN KEY约束冲突" FK_dbo.Records_dbo.Users_UserId"。冲突发生在数据库" MyDb",table" dbo.Users",column' Id'。
不确定如何对其进行故障排除...使用和不使用级联进行测试...
答案 0 :(得分:2)
很可能您在Records表中有一个User表中不存在的UserId。如果您一直使用0或其他值作为“默认”值,这肯定会发生。
答案 1 :(得分:2)
必须与现有数据有关。必须有一些与外键创建冲突的记录。尝试在空模式上创建密钥以查看它是否有效。如果需要该数据,请使用WITH NOCHECK在创建外键时不检查现有行。