如何在 VS 2012 中关闭 ALTER DATABASE 脚本输出?

All*_*len 5 sql-server configuration ssdt

我将 SQL Server 2005 与 Visual Studio 2012 和 SSDT 数据库项目结合使用。

当我发布我的 VS 项目并生成脚本以针对我的数据库运行时,VS 在脚本中包含以下内容。我真的不希望脚本更改数据库属性,尤其是 PAGE_VERIFY 设置。我注意到脚本没有将属性设置回它找到它们的方式。我如何关闭它?我在“工具”->“选项”对话框中花了一些时间,但我没有看到设置。

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)

Mar*_*ian 5

我正在使用 Visual Studio 2010 和 SQL 2008 数据库项目,但想法保持不变。在您的解决方案中,转到项目并执行以下步骤:

  • 右键单击项目-> 属性
  • 项目设置(此设置中的第一个选项卡)
  • 转到目录属性文件部分:确保已选择设置文件(默认情况下,如果之前未更改,则有一个文件 \Properties\Database.sqlsettings)
  • 单击 sqlsettings 文件的编辑:在那里您将看到每次部署到目标数据库的所有选项。它应该类似于以下快照: 在此处输入图片说明

如果您不想部署任何项目默认设置,您应该执行以下步骤:

  • 转到选项卡部署
  • 转到部分部署配置文件(默认为 Properties\Database.sqldeployment)
  • 取消选择“部署数据库属性”选项。它应该类似于以下快照: 在此处输入图片说明

这应该可以帮助您更改/删除您现在正在部署的当前项目设置。