SQL:将扩展的ASCII(128至255)存储在Varchar中



您如何将炭炭128至255存储在varchar ..?

sql似乎将其中的一些将其更改为char(63('?'。我不确定这是否与整理有关吗?UTF-8?n'..'?我已经尝试了coluate latin1_general_bin,不确定它是否支持扩展ASCII ..

显然与NVARCHAR一起使用,但是从理论上讲,这也应该在Varchar中使用。?

在ASCII 0-127字符范围以外的VARCHAR/CHAR列中存储的字符取决于与Collation关联的代码页面。代码页面未明确定义的字符将映射到类似的字符,或者,当没有'?'。

您可以列出与此查询的关联代码页面一起列出校正:

SELECT name, description, COLLATIONPROPERTY(name, 'CodePage') AS CodePage
FROM fn_helpcollations();

dan的答案使我在写曲目上。

varchar肯定会存储扩展的ASCII,但这取决于与整理相关的代码页面。我正在使用Latin1_general_100_bin,该bin使用代码页1252。

https://en.wikipedia.org/wiki/windows-1252

根据此代码页,以下字符不确定:

129、141、143、144、157

实际上,SQL看起来不包括128至159的大多数字符。简单的解决方案只是删除这些字符。

相关内容

  • 没有找到相关文章

最新更新