由于 CDC,无法使用 SSDT 将 sql 服务器代码发布到源代码管理

Can not publish sql server code to source control with SSDT because of CDC

我正在尝试使用 SSDT(Sql 服务器 2008R2,SSDT VS 2010)将数据库源代码发布到源代码管理 (TFS)。问题是它甚至在使用以下脚本的预脚本之前生成代码:

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


GO

失败并显示以下消息:

(64,1): SQL72014: .Net SqlClient Data Provider: Msg 22115, Level 16,

State 1, Line 5 Change tracking is enabled for one or more tables in database 'MyDb'. Disable change tracking on each table before disabling it for the database. Use the sys.change_tracking_tables catalog view to obtain a list of tables for which change tracking is enabled.

我找到的唯一解决方法是手动禁用更改跟踪并在预脚本中启用它,但这个解决方案不是很好... 有什么建议吗?

我找到了解决方案。我只需要在项目设置 -> 数据库设置 -> 操作

中标记复选框 "Change tracking"