sql-server – SSDT和TFS:比较SQL Server数据库无法正常工作

我在Visual Studio 2015和TFS源代码控制中有一个带有SSDT(SQL Server数据工具)的数据库项目.

今天早上,当我试图比较两个数据库(DB – > TFS)时,它没有工作,我收到一个错误:

Comparison completed. Difference detected. Restricted comparison. See error list for detail

并在错误列表窗口警告是:

Severity Code Description Project File Line Suppression State
Warning The login for the target does not have the VIEW ANY
DEFINITION permission. The comparison will be restricted to database
scoped elements if the source is a database.

SSDT的SQL Server用户是sa.

提前致谢

《sql-server – SSDT和TFS:比较SQL Server数据库无法正常工作》

更新:
我通过以下查询修复了比较警告,但主要问题仍然存在:

USE [master]
GO

Grant VIEW ANY DEFINITION to [USERNAME];
GO

USE [DBNAME]
GO

GRANT CONNECT to [USERNAME]
GRANT VIEW DEFINITION TO [USERNAME]

最佳答案 我有一个
similar problem.虽然你没有字符串文字,但它可能仍在检查:

> Schema Compare认为区别在于 – 单击“过程”左侧的展开按钮.
>如果您在比较选项中打开了“忽略空白”.
>如果文件的行结尾是windows(CR LF)或unix(LF).
>(暴力解决方案)使用sqlpackage.exe解压缩两个数据库的.dacpac,重命名为.zip,并比较两个model.xml的内容 – 这里会有一些区别.

点赞