切换到UTF-8时最大的风险是什么?

时间:2013-03-07 17:02:48

标签: sql-server database encoding

我们的团队正计划将我们的SQL Server数据库上的排序规则更新为UTF-8。我们还计划更新我们的表模式以使用nvarchar()来获得真正的Unicode字符支持。然而,我们试图确定的是,这样做的潜在地雷是什么?

例如,我们的查询是否会运行得更慢?数据库中的当前数据是否有可能被破坏?

作为参考,SQL Server被用作在Linux主机上的Apache上运行的PHP Web应用程序的后端。

1 个答案:

答案 0 :(得分:2)

请参阅MSDN SQL Server Books Online on NVARCHAR - SQL Server仅支持UCS-2(每个字符2个字节= UTF-16),但正如您所说,这是 true Unicode

另请参阅this question (and its answer) on dba.stackexchange.com以获得更详尽的说明和背景信息。

使用所有nvarchar列的主要缺点是这样的事实:与varchar相比,这只是普通的存储空间的两倍 - 所有字符都存储为2个字节。除此之外 - 我认为使用nvarchar代替varchar没有任何重大问题......