sql-server - 数据从 SQL Server 数据库中消失

标签 sql-server entity-framework sql-delete sql-server-profiler

我有一个问题,我有一个使用 Entity Framework 的网络应用程序连接到 SQL Server 数据库。每隔一段时间,我的一个表中的数据就会不断被清除。大约 90% 的数据被删除。

我们已经搜索了网络应用程序,但根本找不到任何删除语句,更不用说在那张表上了。

我们已经运行了 SQL Server Profiler,但是它没有选择任何删除语句。但是,我在该表上也有一个 ON DELETE 触发器,用于将已删除的数据复制到备份表,并且它可以正常运行并触发,因此似乎在 delete 语句是否实际运行时存在冲突。服务器上还有数百 GB 的空间,因此空间不足不是问题。

我们已经进行了尽可能多的调查,但无济于事,我们现在没有主意了。

因此,如果有人知道这可能发生的任何原因,我将非常感谢您的帮助。

提前致谢。

最佳答案

您应该检查是否有任何级联删除打开。此查询可以帮助您:

SELECT name, 
       delete_referential_action_desc
FROM   sys.foreign_keys

我不知道 Entity Framework 是否可以有自己的级联删除,我没有使用它。所以我不知道如何检查级联删除的 Entity Framework 。

关于sql-server - 数据从 SQL Server 数据库中消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41847512/

相关文章:

sql - 需要使用表名和表架构列出 SQL Server 数据库中的所有触发器

asp.net - 缓存 LINQ-SQL 对象和 DataContext 线程安全

.net - 如何监控数据库往返

sql-delete - 如何缩短数据库表的 DELETE 语句?

MySQL delete with subquery给出语法错误

Mysql delete语句有限制

sql - SQL 中的 CROSS JOIN 与 INNER JOIN

sql - 每年从零开始的累积栏

sql - 使用 Left 和 char 索引返回无效参数

c# - 更新时保留 Entity Framework 中的导航属性而不进行跟踪