Visual Studio 2008数据库项目在架构比较期间生成ALTER DATABASE

Bri*_*ian 5 sql-server visual-studio-2008 visual-studio-2008-db

我有一个新的Visual Studio 2008数据库项目(Data Dude).它是通过指向我们现有的数据库生成的.我现在做了一些更改(新列,表,索引等),我正在尝试生成用于部署的部署(差异)脚本.我有一个Schema Comparison设置来进行比较并生成diff脚本文件.我想我已经调整了大部分比较设置和对象忽略了我需要的东西,但是,在顶部我得到了一些我不想生成的ALTER DATABASE命令.它们看起来像这样:

IF EXISTS (SELECT 1
           FROM   [master].[dbo].[sysdatabases]
           WHERE  [name] = N'$(DatabaseName)')
    BEGIN
        ALTER DATABASE [$(DatabaseName)]
            SET ANSI_NULLS ON,
                ANSI_PADDING ON,
                ANSI_WARNINGS ON,
                ARITHABORT ON,
                CONCAT_NULL_YIELDS_NULL ON,
                QUOTED_IDENTIFIER ON,
                ANSI_NULL_DEFAULT ON,
                CURSOR_DEFAULT LOCAL 
            WITH ROLLBACK IMMEDIATE;
    END


GO
IF EXISTS (SELECT 1
           FROM   [master].[dbo].[sysdatabases]
           WHERE  [name] = N'$(DatabaseName)')
    BEGIN
        ALTER DATABASE [$(DatabaseName)]
            SET PAGE_VERIFY NONE 
            WITH ROLLBACK IMMEDIATE;
    END


GO
Run Code Online (Sandbox Code Playgroud)

我更愿意调整设置,以便我不必与我的15+成员团队沟通,他们需要在每次想要下载并将最新部署到他们的环境时从差异文件中删除这些行.

什么设置控制这个?

Sho*_*ess 1

项目的 .sqldeployment 和 .sqlsettings 文件(可在解决方案资源管理器中的项目属性文件夹中找到)中有一些设置可以控制这一点。设置本身可以在 .sqlsettings 文件 [ DB Settings Screenshot ] 中进行调整,并且在查看 .sqldeployment 设置时,可以在第一个复选框中找到禁用整个数据库属性脚本生成的功能。[ SQL 部署设置截图]