【发布时间】:2012-11-11 19:25:56
【问题描述】:
我们希望将 Confluence 系统迁移到 SQL Server 2008 R2。现在,由于 Confluence 使用 UTF-8 编码,我需要一个使用相同编码的数据库(我猜这是排序规则?)。
命令来了
alter database confluence set collation COLLATION_NAME
现在,似乎没有 utf-8,而且我发现 SQL Server 使用基本相同的 ucs-2。但我不知道 ucs-2 的排序规则名称是什么?有人知道吗?
编辑:我现在确实看到了编码和整理之间的区别。 Confluence documentation 建议我应该创建一个依赖于 UCS-2 的模式(因为 MS SQL 缺少对 UTF-8 的支持)。我查看了 Managment Studio,并在数据库的 Security 目录中找到了模式条目。但是,我不知道如何将 UCS-2 编码分配给架构。我必须在 Managment Studio 中实现这一点(或者我应该使用哪个查询)?
【问题讨论】:
-
查看this other SO question - encoding = 你有什么字符以及它们是如何表示的 vs. collation = 字符是如何排序和排序的.以及为什么选择任何排序规则,您可以将 Unicode 存储在
nchar() / nvarchar()列中,而char() / varchar()存储非 Unicode 字符 -
dba.stackexchange.com/questions/7303/… - 在这里我解释了我发现的关于排序规则在多语言数据库和 UTF-8 / Unicode 支持中的作用。
标签: utf-8 sql-server-2008-r2 collation ucs2