据我所知,在MySQL unicode_ci(特别是utf8_unicode_ci)中,排序规则是为了支持所有字符而不管语言环境。
我需要使用SQL Server 2008 R2实现相同的功能。我的数据库将包含非常不同语言的数据(不限于基于拉丁语的字母表)。我根本不会使用非Unicode字符串。我应该选择什么样的整理?
答案 0 :(得分:7)
你可以选择Latin1_General_CI_AI
原因是使用NVarchar字段存储unicode数据,SQL Server更灵活,因为它可以混合Varchar(1字节)和NVarchar(2字节)数据。因此,要匹配UTF8,任何排序规则都可以。至于CI - 2008年的每一个排序规则都允许添加CI规范(它是UI中的一个复选框“区分大小写” - 未选中不敏感)。
最后一点和其他一些像宽度只是对SQL Server进行额外调整。
来自http://forums.mysql.com/read.php?103,187048,188748的第2点
utf8_unicode_ci适用于所有这些语言: 俄语,保加利亚语,白俄罗斯语,马其顿语,塞尔维亚语和乌克兰语。
如果您需要对特定语言进行排序,语言处理重音的方式不同,则需要特定的字典顺序 - 请参阅此处http://msdn.microsoft.com/en-us/library/ms144250.aspx。否则Latin1_General基于拉丁美洲