SSMS v18.8 将非打印字符替换为空格

SSMS v18.8 replaces non-printing characters with blanks

最新的 SQL Server SSMS v18.8 似乎正在用网格输出中的空格替换非打印字符。此问题已在 this question 中针对 v2008 解决,并指出它已在 v2012 中修复。有谁知道在 v18.8 中恢复 v2012 行为的选项吗?

如果您在 v18.8 中执行此查询,您将得到“aN-blank-b”:

select 'a'+Char(78)+Char(9)+'b'

如果您 运行 在 v2012 中执行相同的查询,您将得到“aN-tab-b”。 该选项卡包含在两个版本的文本和文件输出中。

似乎是否获得该选项卡链接到复制或保存时保留 CR/LF 设置,然而,只有在启用后重新启动 SSMS它。

首先,通过工具 -> 选项 -> 查询结果 -> SQL 服务器 -> 结果到网格 -> 在复制或保存时保留 CR/LF。

然后关闭SSMS,然后重新打开。当您复制并粘贴该值时,您会得到一个标签。

发生此“功能”的动画 GIF: