在 Visual Studio 数据库项目中,在我向项目添加新的外键后,如何阻止它根据这些键检查数据?
Posted
技术标签:
【中文标题】在 Visual Studio 数据库项目中,在我向项目添加新的外键后,如何阻止它根据这些键检查数据?【英文标题】:In a visual studio database project, after I add new foreign keys to the project how do I stop it from checking the data against those keys? 【发布时间】:2012-06-26 02:50:05 【问题描述】:在以前没有外键的情况下,我向数据库项目添加了一堆外键。在生成的 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)
但没有骰子。有什么建议吗?
【问题讨论】:
【参考方案1】:啊哈,在属性文件夹下的 Database.sqldeployment 属性页面中有一个名为 checkNewConstraints 的高级选项。这应该可以解决问题。
【讨论】:
能否请您粘贴图片(屏幕截图),因为我在 vs2010/2011/2012 中找不到该选项 @AnilPurswani 这很奇怪,我也找不到文件了 该文件本身称为 Database.sqldeployment,它位于属性文件夹中。以前可以展开数据库项目中的properties文件夹,点击文件,现在好像不行了! 在 VS 2013 中,您可以找到打开项目属性的此选项。在“调试”选项卡中,有一个会话“部署选项”,最后有一个“高级”按钮,可打开“高级部署设置”。在常规选项卡上,您会找到“新约束的脚本验证”选项。【参考方案2】:在 VS 2019 中,您可以在下面的屏幕截图中找到它。取消选中“新约束的脚本验证”。
右键单击您的项目,您将在上下文菜单中找到发布。这将打开“发布数据库”对话框。按照1、2、3(取消勾选此选项),您将能够通过对表中现有数据的验证进行约束检查。
【讨论】:
以上是关于在 Visual Studio 数据库项目中,在我向项目添加新的外键后,如何阻止它根据这些键检查数据?的主要内容,如果未能解决你的问题,请参考以下文章
为啥在我将文件添加到项目时,Visual Studio 会检出 .vspscc 文件?
Visual Studio 2010 SQL 数据库项目命令行架构比较
Visual Studio 数据库项目 - 部署到没有所有数据库引用的环境
我已经下载了我想在我的 Visual Studio 项目 EXPO 中使用的最新版本的 Gradle 7.3