连字符VS破折号:用连字符替换破折号

2022-04-04 00:00:00 special-characters sql-server

好的 所以我们最近遇到了一个问题

在报表服务中,某些字符串列显示为乱码中文字符。

进一步调查后,我们发现是连字符。嗯,这是我们首先想到的。在进一步的调查中,我们发现它是一个破折号(或短划线)。基本上,发生这种情况的原因是人们将粘贴值从Word复制到此列中,Word会自动将连字符转换为破折号。

但如果您查看数据库,它们看起来是一样的。但在应用程序端,您可以看到区别。

如何用普通连字符替换破折号。

如果将值复制到中,则将其放入SQL服务器中。连字符为灰色,破折号为黑色 但它们看起来完全一样(也就是不大也不小)。问题是我那时不能写一个替换脚本(它们完全一样)

将(‘-’替换为‘-’)

有没有办法在SQL Server中标识像破折号这样的特殊字符?

SQL Server v 2005


解决方案

您可以使用NCHAR(8211)表示全短划线,或NCHAR(8212)表示全短划线。

相关文章