首页 > 解决方案 > 即使使用 NOCHECK CONSTRAINT,SQL Server 也会引发错误“DELETE 语句与 REFERENCE 约束冲突”

问题描述

我正在使用一个小型应用程序,并且从数据库写入或读取的每个 SQL 查询都可以正常工作,但删除除外。我不明白我做错了什么,因为我停用了所有约束。

我正在使用此查询,但我不断收到错误(只有DELETE FROM [dbo].[Orders]导致此错误,历史删除工作正常)

DELETE 语句与 REFERENCE 约束“FK_Order_Details”冲突。

这是 SQL 查询:

ALTER TABLE [dbo].[Orders] NOCHECK CONSTRAINT all;

DELETE FROM [dbo].[Orders] 
WHERE ([OrderID] = @OrderID);

DELETE FROM [dbo].[History] 
WHERE ([OrderID] = @OrderID);

ALTER TABLE [dbo].[Orders] CHECK CONSTRAINT all;

提前感谢您的帮助!

标签: c#sqlsql-server

解决方案


约束FK_Order_Details另一个表上。可能称为“OrderDetails”。


推荐阅读