【发布时间】:2014-10-05 17:07:01
【问题描述】:
即使我正在删除并尝试删除表,我也会收到错误,
ALTER TABLE [dbo].[Table1] DROP CONSTRAINT [FK_Table1_Table2]
GO
DROP TABLE [dbo].[Table1]
GO
错误
消息 3726,级别 16,状态 1,行 2 无法删除对象 'dbo.Table1' 因为它被 FOREIGN KEY 约束引用。
使用 SQL Server 2012
我使用 sql server 2012 生成了脚本,那么 sql server 是否给了我错误的脚本?
【问题讨论】:
-
这是一个令人沮丧的过程,因为您无疑正在经历。试试这个:我在构建表时保持一个“依赖项”电子表格,其中记录了每个表创建的 PK 以及它在其他表中引用的 FK。当您确定用户如何添加数据时,无论如何您都需要此信息。例如,当用户在屏幕上并向 Table1 添加记录时,需要向 Table2 和 Table3 添加什么之前才能追加到 Table1?这些规则可以通过验证或向用户发出警告来强制执行。希望这会有所帮助。
标签: sql sql-server