0

以前没有外键时,我向数据库项目添加了一堆外键。在生成的 sql 文件(sql/debug/$projectname.sql)中,我看到一个以

PRINT N'Checking existing data against newly created constraints';
GO
USE [$(DatabaseName)];


GO
ALTER TABLE [dbo].[table1] WITH CHECK CHECK CONSTRAINT [FK_1];

ALTER TABLE [dbo].[table1] WITH CHECK CHECK CONSTRAINT [FK_2];

然后继续。

如何阻止数据库项目生成此部分以根据新约束检查数据?我尝试使用创建外键

ALTER TABLE dbo.table1 WITH NOCHECK
ADD CONSTRAINT [FK_1]
FOREIGN KEY (blah)
REFERENCES Table2 (blah2)

但没有骰子。有什么建议么?

4

2 回答 2

2

啊哈,在属性文件夹下的 Database.sqldeployment 属性页面中有一个名为 checkNewConstraints 的高级选项。这应该够了吧。

于 2012-06-26T03:02:29.207 回答
0

在 VS 2019 中,您可以在下面的屏幕截图中找到它。取消选中“新约束的脚本验证”。

右键单击您的项目,您将在上下文菜单中找到发布。这将打开“发布数据库”对话框。按照 1、2、3(取消选中此选项),您将能够通过对表中现有数据的验证进行约束检查。

禁用 SQL 表中现有数据的检查约束

于 2020-09-28T07:34:27.767 回答