c# - 即使使用 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;
提前感谢您的帮助!
解决方案
约束FK_Order_Details
在另一个表上。可能称为“OrderDetails”。
推荐阅读
- pyqt - 使 QTableWidgetItem 不可编辑,但仍然可以选择字符串的一部分
- node.js - 如何删除本地安装的 npx 命令版本?
- powershell - 使用日志文件 ping 服务器的预定脚本
- javascript - 从任何 web 应用程序调用时,Window exe API cors 问题。C++
- python - 如果字段不存在,则更新 MongoDB 文档
- firebase - Flutter Firestorage getDownloadUrl() 返回 NoSuchMethodError
- css - 如何删除元素并用空格代替显示:vuetify中的无
- python - heroku 在 python 中打开应用程序到系统
- c# - Unity C# 变量在 OnCollisionEnter 中不起作用
- visual-studio-code - 如何克服 vs 代码拒绝更改为我选择的字体的问题?