SQL Server varchar列试图在SSRS中显示换行符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server varchar列试图在SSRS中显示换行符相关的知识,希望对你有一定的参考价值。

我有一个ERP解决方案,可以将文本输入保存到SQL Server varchar列中。用户通常会在这些列中包含换行符。当我在SSMS查询中查看数据时,换行符显示为双倍空格。如果我在SSRS中查询它,则会完全删除双空格。

是否可以在SSRS中重新创建文本列,直接从查询中换行? (即替换换行符的双倍空格)

SSMS中的示例

Layout Issue Number   Time On  Time Off  Width In   Finished Width   Variations From Layout

SSRS中的相同数据

Layout Issue Number Time On Time OffWidth In Finished Width Variations From Layout
答案

我有一些报告,其中我基本上做了这件事。 SQL返回char(10)+ char(13)(换行+回车),SSRS将其视为换行符和回车符。我的想法是检查你在SSMS中看到的那两个空格,看看它们是什么ASCII字符。如果我没记错的话你需要两者。所以:

select
    ascii(substring('Layout Issue Number   Time On  Time Off  Width In   Finished Width   Variations From Layout',20,1)),
    ascii(substring('Layout Issue Number   Time On  Time Off  Width In   Finished Width   Variations From Layout',21,1))

如果它们返回char(32),char(32),你可以替换(string,'',char(10)+ char(13))

以上是关于SQL Server varchar列试图在SSRS中显示换行符的主要内容,如果未能解决你的问题,请参考以下文章