问问题
2574 次
2 回答
0
我在nvarchar
->varchar
转换出错时看到了类似的情况。特别是在连接并执行此操作时:
e.FirstName + ' ' + e.LastName
而不是这样做:
e.FirstName + N' ' + e.LastName
根据需要执行cast(nvarchar_field AS varchar(50))
- 或相反的操作。将所有内容带到 NVARCHAR,因为它支持支持 UTF-8 的 Unicode。
如果字段是 varchar 而不是 nvarchar,则可能需要修改实际表。
于 2019-11-26T14:22:56.740 回答
0
我不认为“É”被编码为“É”,使用其他特殊字符对字符进行编码是一种非常奇怪的方式。
似乎恰恰相反:
我注意到“É”有时显示为“é”。这是一个编码字符错误,因为字符编码不适合该语言。
如果您尝试从错误显示字符中更正正确的法语字符,我不知道是否存在这样的列表。您首先需要知道您在编码字符中犯了什么样的错误,才能找到错误显示的列表。
所以我建议的解决方案在这里:找到正确的字符编码来解决这个问题。更改编码通常会修复显示。
对于法语字符,正确的是iso-8859-1和utf-8。一旦你有正确的编码,你可以找到一个转换列表,将你的源代码翻译成显示的字符。
例如,这个列表:http ://www.fileformat.info/info/charset/ISO-8859-1/list.htm
于 2017-05-20T14:22:26.193 回答