Dan*_*bes 5 sql-server stored-procedures schema-compare visual-studio-2012 dacpac
我使用Visual Studio 2012架构比较工具与Microsoft SQL Server DAC包文件(dacpac)区分实际数据库.期望是数据库和文件是"相等的".但是,模式比较报告BodyScript了三个存储过程的属性差异,所有这些过程都包含大量动态SQL.但令人沮丧的是,在对象定义的实际差异中,存储过程的定义之间没有明显的差异.此外,我们已将脚本复制到许多不同的diff工具中以查找空格类型差异,但看起来这两个脚本是二进制相同的.我们已经玩了很多架构比较选项(忽略空格,忽略关键字大小写等),但似乎没有什么能解决这个问题.
在研究这个问题时,我遇到了类似的问题,发布在Microsoft Connect上,也发布在StackOverflow上,但似乎这些问题尚未解决.有没有人对解决这个问题的其他方法有任何建议?
看来这个问题是由字符串文字中的新行字符引起的.
这是不好的:
DECLARE @badQuery NVARCHAR(MAX) = N'SELECT
*
FROM
[dbo].[MyRadTable]';
Run Code Online (Sandbox Code Playgroud)
这很好:
DECLARE @goodQuery NVARCHAR(MAX) = N'SELECT '+
'* ' +
'FROM ' +
'[dbo].[MyRadTable]';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1010 次 |
| 最近记录: |