Sql server SSDT架构将锁定集和U标识符比较为OFF
我安装了Visual studio 2012,并安装了SSDT版本11.1.20627.0 一直困扰我的一个问题是SSDT项目中的所有存储过程,在尝试使用模式比较将其推送到服务器时。SP的SET QUOTED\U标识符始终处于关闭状态,我无法找到更改此行为的方法 目标数据库是my local DB,其默认QUOTED_标识符已更改为ON(True) 在数据库项目属性页中,选中了“设置引用的标识符”复选框,但禁用了整个复选框 我尝试更改一些模式比较选项,如“忽略表选项”,结果是一样的:它总是给我一些更新脚本,如下所示:Sql server SSDT架构将锁定集和U标识符比较为OFF,sql-server,visual-studio-2012,sql-server-data-tools,Sql Server,Visual Studio 2012,Sql Server Data Tools,我安装了Visual studio 2012,并安装了SSDT版本11.1.20627.0 一直困扰我的一个问题是SSDT项目中的所有存储过程,在尝试使用模式比较将其推送到服务器时。SP的SET QUOTED\U标识符始终处于关闭状态,我无法找到更改此行为的方法 目标数据库是my local DB,其默认QUOTED_标识符已更改为ON(True) 在数据库项目属性页中,选中了“设置引用的标识符”复选框,但禁用了整个复选框 我尝试更改一些模式比较选项,如“忽略表选项”,结果是一样的:它总是给我一
GO
USE [$(DatabaseName)];
GO
PRINT N'Creating [dbo].[myspname]...';
GO
SET ANSI_NULLS ON;
SET QUOTED_IDENTIFIER OFF;
GO
任何提示都会被告知引用\u标识符选项可以在项目级别和程序级别设置。单击存储过程文件->属性,并检查此处是否启用了引用的\u标识符
使用模式比较时,还要验证“忽略引用的标识符”选项是启用还是禁用。最后找出答案。这是由旧版本的SSDT引起的。安装了SSDT,标签为SSDT_11.0.50730.0,现在似乎可以工作了 我不得不抱怨SSDT奇怪的版本控制规则:它看起来
- 11.xxxxx适用于Visual Studio 2012
- 12.xxxxx适用于Visual Studio 2013
- 14.xxxxx适用于Visual Studio 2015
这确实令人困惑,因为它会让您相信版本11.1.20627.0比版本11.0.50730.0更新。这不是真的。谢谢你的评论。你能告诉我你的SSDT版本吗?对于我的版本11.1.20627.0,过程文件属性中没有引用的_标识符属性。模式比较选项中也没有忽略引用标识符复选框