SQL:在 varchar 字符串中插入换行符

新手上路,请多包涵

我在 StackOverflow 上搜索了有关如何在 SQL 文本字符串中插入换行符的所有可能解决方案。我已经提到了这个链接,但无济于事。 如何在 SQL Server VARCHAR/NVARCHAR 字符串中插入换行符

但是没有一个解决方案对我有用。

这就是我想要做的:

 insert into sample (dex, col)
values (2, 'This is line 1.' + CHAR(13)+CHAR(10) + 'This is line 2.')

但这是生成的输出:(Select Col from sample where dex = 2)

这是第 1 行。这是第 2 行。

这是我想要的输出:

这是第 1 行。

这是第 2 行。

如果有帮助,我正在使用 SQL 服务器和 SSMS。

任何想法为什么它不起作用?

原文由 90abyss 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.7k
2 个回答

那么你的查询工作得很好。默认情况下,SSMS 在网格视图中显示所有查询输出,不显示换行符。

要查看它,您可以使用 cntrl + T 快捷方式或如下所示切换到文本视图

在此处输入图像描述

我为您的查询得到的结果如下(它们有效) 在此处输入图像描述

原文由 DhruvJoshi 发布,翻译遵循 CC BY-SA 3.0 许可协议

这个讨论有点晚了,但在 SSMS 2016 中,工具 | 上有一个选项。 Query Results / SQL Server / Results to Grid 下的选项菜单称为“Retain CR/LF on copy or save”。选中此框将允许您将网格结果中的单元格中的值复制到另一个查询窗口,并且仍然有换行符。

原文由 user2092071 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进