我有一些我认为是Unicode的数据,看看当我将它存储到VARCHAR(MAX)
数据类型的数据库列时会发生什么。
这是来源,来自文件UTF-8 ......
looking for that ‘X’ and • 3 large bedrooms with 2 ensuites and • Main bedroom with ensuite & surround with plantation shutters`
并使用Visual Studio调试器:
=>所以2x撇号和2x子弹。
我认为如果列的类型为NVARCHAR
?
我假设我的源数据不是Unicode,因此,我完全厌倦了所有这些Unicode / UTF-8的东西:(
答案 0 :(得分:1)
我认为如果列的类型是NVARCHAR,SQL Server只能存储Unicode吗?
那是对的。据我所知,你的例子中没有存储Unicode。可能它存储在Windows代码页1252中编码的字节,这将是西方安装SQL Server的默认编码。
代码页1252 happens to include字符‘
,’
和•
的映射,因此可以安全地存储这些字符。但是走出有限的曲目,你就会开始失去角色。