c# - 无法截断表,因为它被使用 ExecuteSqlCommand 的 FOREIGN KEY 约束引用
问题描述
我想从实体框架中清除此表中的数据
db2.Database.ExecuteSqlCommand("TRUNCATE TABLE [destDepartments]");
但我有这个错误
无法截断表“destDepartments”,因为它被 FOREIGN KEY 约束引用。
那么我如何从 EF 做到这一点?
解决方案
什么时候可以使用是有限制的TRUNCATE TABLE
。其中之一是该表不能与数据库中的其他表存在外键关系。改为使用DELETE FROM [destDepartments]
。
TRUNCATE TABLE
并且在功能DELETE FROM
上不等效,但后者将允许您清除与数据库中其他表相关的表(前提是保持引用完整性)。
推荐阅读
- c# - Dynamics CRM 2016 on-premise 禁用用户不起作用
- javascript - 渲染在条件 for 循环中做出反应
- python - Scrapy爬虫告诉我这个输出是什么?
- c# - If 条件下的内联 TryGetValue 并评估它的值
- postgresql - 如何在不指定 postgresql 中的键的情况下将 jsonb 列的所有值更新为相同的值?
- algorithm - 带约束的二维遍历算法
- clockify - 从其他用户那里获取“entriesInRange”
- angular - 量角器中的本地存储?
- javascript - 制作一个 href=tel:无需添加号码即可工作
- asp.net - 构建网站会导致为该网站更改 IIS 文件夹