有没有人经历过这个并提出解决方案?
Windows Server 2012R2上的SQL Server 2016 Enterprise
使用SSMS的脚本工具,最近似乎发生了一些变化。 SQL Server脚本引擎的输出与我编写脚本的存储过程的方式不同,例如,更长;差远了。
我已经使用了这些工具很长一段时间,虽然有一些细微差别,但这对我的编码约定和源代码控制有影响。 SQL服务器脚本的输出 - 参数放在一行,缩进丢失,连接分成多行,大小写被更改。 :
CREATE PROCEDURE [dbo].[GetAdverseReaction]
@ID INT
AS
SELECT arc.CategoryName,
ar.*
FROM AdverseReaction AS ar
INNER JOIN
AdverseReactionCategory AS arc
ON arc.ID = ar.CategoryID
WHERE ar.ID = @ID;
-- input --
CREATE PROCEDURE GetAdverseReaction
(
@ID int
)
AS
SELECT arc.CategoryName, ar.*
FROM AdverseReaction ar
INNER JOIN AdverseReactionCategory arc ON arc.ID = ar.CategoryID
WHERE ar.ID = @ID
GO
请参阅下面的答案并在此处阅读更多内容:Parameterization for Always Encrypted
我在SSMS“查询选项”中找到复选框“始终加密启用参数化”,脚本在执行之前按照描述重新格式化。我取消选中,事情恢复正常。我猜这是特定于此版本的SSMS。即> = 17