安装程序中的排序规则设置
更新日期: 2007 年 9 月 15 日
排序规则设置,包含字符集、排序顺序和其他区域特定的设置,是 Microsoft SQL Server 数据库结构和功能的基础。 在您的单位内,应开发排序规则设置的标准,并在安装 SQL Server 时应用这些设置。 如果服务器之间的排序规则设置不一致,许多服务器对服务器的活动就可能失败或生成不一致的结果。 选择 Microsoft Windows 区域设置以匹配其他 SQL Server 2005 实例中的排序规则设置;或者选择**“SQL 排序规则”**以匹配 SQL Server 早期版本中的排序顺序设置。
SQL Server 2005 支持在 SQL Server 2005 实例的以下级别设置排序规则:
- 服务器级
- 数据库级
- 列级
- 表达式级
有关排序规则级别的详细信息,请参阅排序规则术语。 有关重新生成系统数据库以指定新的系统排序规则的详细信息,请参阅如何从命令提示符安装 SQL Server 2005。
Windows 系统区域设置
仅当 SQL Server 的安装必须与另一个 SQL Server 实例使用的排序规则设置相匹配时,或者当排序规则设置必须与另一台计算机的 Windows 系统区域设置相匹配时,才应更改 Windows 排序规则的默认设置。
排序规则指示符
从**“排序规则指示符”**列表中选择特定的 Windows 排序规则的名称。 例如:
- 美国英语字符集(代码页 1252)使用 Latin1_General。
- 对于使用与美国英语(代码页 1252)相同字符集的所有西班牙语变体使用 Modern_Spanish。
- 使用阿拉伯语字符集(代码页 1256)的所有阿拉伯语变体使用 Arabic。
排序次序
选择用于所选排序规则指示符的排序顺序选项。 二进制是最快的排序顺序,并且区分大小写,但是可能会产生意外的排序顺序。 如果选择了**“二进制”,则“区分大小写”、“区分重音”、“区分假名”和“区分全半角”**选项将不可用。 有关详细信息,请参阅 Windows 排序规则排序样式。
二进制排序规则
二进制排序规则基于每个字符的位模式来排序和比较 SQL Server 中的数据。 SQL Server 中的每个二进制排序规则都映射到特定的语言区域设置和 ANSI 代码页,且每个都执行区分大小写和区分重音的数据排序。 二进制排序规则提供最快的数据排序。 有关详细信息,请参阅 Windows 排序规则排序样式和使用二进制排序规则。
SQL 排序规则
**“SQL 排序规则”**选项用于确保与旧版本的 SQL Server 兼容。 选择此选项可以匹配 SQL Server 2000、SQL Server 7.0 或更早版本的设置。 有关详细信息,请参阅使用 SQL 排序规则。
新排序规则版本
对早期排序规则行为做出了下列排序规则改进:
- 对远东地区排序规则提供对增补字符比较的支持
- 增加了新 Indic_General_90_CI_AS(仅 Unicode)排序规则版本,以支持对排序行为的更改
重要提示:
这些版本更新都显著影响排序和比较行为。 在这些排序规则升级到 Microsoft SQL Server 2005 的过程中,不会强制迁移到新版本。 如果用户迁移到新排序规则以便支持补充字符,则所有数据库和 SQL Server 对象都必须重新索引。 由于重新索引的过程可能很耗时,所以应考虑增补字符支持的成本收益。 当客户选择不迁移到新排序规则时,SQL Server 2000 中的排序规则在 SQL Server 2005 中将受到支持。
已为此 SQL Server 2005 版本更新以下排序规则,以使用 Windows Server 2003 码位排序行为。
旧排序规则名称 | 新排序规则名称 |
---|---|
日语 |
Japanese_901 |
中文 |
Chinese_PRC_90 |
Chinese_PRC_Stroke |
Chinese_PRC_Stroke_90 |
Chinese_Taiwan_Bopomofo |
Chinese_Taiwan_Bopomofo_90 |
Chinese_Taiwan_Stroke |
Chinese_Taiwan_Stroke_90 |
朝鲜语 |
Korean_90 |
印地语(此版本中不推荐使用) |
Indic_General_90_CI_AS(仅 Unicode) |
1Japanese_Unicode 是用于向后兼容 SQL Server 7.0 的排序规则。 有关详细信息,请参阅 https://support.microsoft.com/kb/302747。 使用 Japanese 排序规则以匹配 SQL Server 2000 的排序规则设置。 如果不需要与以前的 SQL Server 版本的排序规则设置进行匹配,则使用 SQL Server 2005 中的新的 Japanese 排序规则 Japanese_90。
SQL Server 安装程序中的默认排序规则
在控制面板中,找到**“区域选项”(Windows 2000) 或“区域和语言选项”**(Windows XP) 中的 Microsoft Windows 区域设置名称,然后使用下表找到相应的排序规则指示符和代码页,以匹配下面 SQL Server 2005 排序规则表中现有 Windows 区域设置的排序规则设置。
Windows 系统区域设置 | LCID(区域设置 ID) | 默认 SQL 排序规则 | 代码页 |
---|---|---|---|
南非荷兰语 |
0x436 |
Latin1_General_CI_AS |
1252 |
阿尔巴尼亚语 |
0x41c |
Albanian_CI_AS |
1250 |
阿拉伯语(阿尔及利亚) |
0x1401 |
Arabic_CI_AS |
1256 |
阿拉伯语(巴林群岛) |
0x3c01 |
Arabic_CI_AS |
1256 |
阿拉伯语(埃及) |
0xc01 |
Arabic_CI_AS |
1256 |
阿拉伯语(伊拉克) |
0x801 |
Arabic_CI_AS |
1256 |
阿拉伯语(约旦) |
0x2c01 |
Arabic_CI_AS |
1256 |
阿拉伯语(科威特) |
0x3401 |
Arabic_CI_AS |
1256 |
阿拉伯语(黎巴嫩) |
0x3001 |
Arabic_CI_AS |
1256 |
阿拉伯语(利比亚) |
0x1001 |
Arabic_CI_AS |
1256 |
阿拉伯语(摩洛哥) |
0x1801 |
Arabic_CI_AS |
1256 |
阿拉伯语(阿曼) |
0x2001 |
Arabic_CI_AS |
1256 |
阿拉伯语(卡塔尔) |
0x4001 |
Arabic_CI_AS |
1256 |
阿拉伯语(沙特阿拉伯) |
0x401 |
Arabic_CI_AS |
1256 |
阿拉伯语(叙利亚) |
0x2801 |
Arabic_CI_AS |
1256 |
阿拉伯语(突尼斯) |
0x1c01 |
Arabic_CI_AS |
1256 |
阿拉伯语(阿拉伯联合酋长国) |
0x3801 |
Arabic_CI_AS |
1256 |
阿拉伯语(也门) |
0x2401 |
Arabic_CI_AS |
1256 |
亚美尼亚语(亚美尼亚共和国) |
0x42b |
Latin1_General_CI_AS |
Unicode |
阿泽里语-西里尔语(阿塞拜疆)1 |
0x82c |
Azeri_Cyrillic_90_CI_AS |
1251 |
阿泽里语-拉丁语(阿塞拜疆)1 |
0x42c |
Azeri_Latin_90_CI_AS |
1254 |
巴斯克语 |
0x42d |
Latin1_General_CI_AS |
1252 |
白俄罗斯语 |
0x423 |
Cyrillic_General_CI_AS |
1251 |
保加利亚语 |
0x402 |
Cyrillic_General_CI_AS |
1251 |
加泰罗尼亚语 |
0x403 |
Latin1_General_CI_AS |
1252 |
中文(香港特别行政区)1 |
0xc04 |
Chinese_Hong_Kong_Stroke_90_CI_AS |
950 |
中文(澳门特别行政区)2 |
0x1404 |
Chinese_PRC_90_CI_AS |
950 |
中文(中华人民共和国)2 |
0x804 |
Chinese_PRC_CI_AS |
936 |
中文(中华人民共和国) |
0x20804 |
Chinese_PRC_Stroke_CI_AS |
936 |
中文(新加坡) |
0x1004 |
Chinese_PRC_90_CI_AS |
936 |
中文(台湾) |
0x404 |
Chinese_Taiwan_Stroke_CI_AS |
950 |
中文(台湾) |
0x30404 |
Chinese_Taiwan_Bopomofo_CI_AS |
950 |
克罗地亚语 |
0x41a |
Croatian_CI_AS |
1250 |
捷克语 |
0x405 |
Czech_CI_AS |
1250 |
丹麦语 |
0x406 |
Danish_Norwegian_CI_AS |
1252 |
马尔代夫语1 |
0x465 |
Divehi_90_CI_AS(仅 Unicode) |
Unicode |
荷兰语(比利时) |
0x813 |
Latin1_General_CI_AS |
1252 |
荷兰语(荷兰) |
0x413 |
Latin1_General_CI_AS |
1252 |
英语(澳大利亚) |
0xc09 |
Latin1_General_CI_AS |
1252 |
英语(伯里兹) |
0x2809 |
Latin1_General_CI_AS |
1252 |
英语(加拿大) |
0x1009 |
Latin1_General_CI_AS |
1252 |
英语(加勒比海) |
0x2409 |
Latin1_General_CI_AS |
1252 |
英语(香港特别行政区) |
0x3c09 |
Latin1_General_CI_AS |
1252 |
英语(印度) |
0x4009 |
Latin1_General_CI_AS |
1252 |
英语(印度尼西亚) |
0x3809 |
Latin1_General_CI_AS |
1252 |
英语(爱尔兰) |
0x1809 |
Latin1_General_CI_AS |
1252 |
英语(牙买加) |
0x2009 |
Latin1_General_CI_AS |
1252 |
英语(马来西亚) |
0x4409 |
Latin1_General_CI_AS |
1252 |
英语(新西兰) |
0x1409 |
Latin1_General_CI_AS |
1252 |
英语(菲律宾) |
0x3409 |
Latin1_General_CI_AS |
1252 |
英语(新加坡) |
0x4809 |
Latin1_General_CI_AS |
1252 |
英语(南非) |
0x1c09 |
Latin1_General_CI_AS |
1252 |
英语(特立尼达) |
0x2c09 |
Latin1_General_CI_AS |
1252 |
英语(英国) |
0x809 |
Latin1_General_CI_AS |
1252 |
英语(美国) |
0x409 |
SQL_Latin1_General_CP1_CI_AS |
1252 |
英语(津巴布韦) |
0x3009 |
Latin1_General_CI_AS |
1252 |
爱沙尼亚语 |
0x425 |
Estonian_CI_AS |
1257 |
法罗语 |
0x438 |
Latin1_General_CI_AS |
1252 |
现代波斯语 |
0x429 |
Arabic_CI_AS |
1256 |
芬兰语 |
0x40b |
Finnish_Swedish_CI_AS |
1252 |
法语(比利时) |
0x80c |
French_CI_AS |
1252 |
法语(加拿大) |
0xc0c |
French_CI_AS |
1252 |
法语(法国) |
0x40c |
French_CI_AS |
1252 |
法语(卢森堡) |
0x140c |
French_CI_AS |
1252 |
法语(摩纳哥) |
0x180c |
French_CI_AS |
1252 |
法语(瑞士) |
0x100c |
French_CI_AS |
1252 |
加利西亚语(西班牙) |
0x456 |
Latin1_General_CI_AS |
1252 |
格鲁吉亚语 |
0x437 |
Latin1_General_CI_AS |
Unicode |
德语(奥地利) |
0xc07 |
Latin1_General_CI_AS |
1252 |
德语(德国) |
0x407 |
Latin1_General_CI_AS |
1252 |
德语(列支敦士登) |
0x1407 |
Latin1_General_CI_AS |
1252 |
德语(卢森堡) |
0x1007 |
Latin1_General_CI_AS |
1252 |
德语(电话簿风格) |
0x10407 |
German_PhoneBook_CI_AS |
1252 |
德语(瑞士) |
0x807 |
Latin1_General_CI_AS |
1252 |
希腊语 |
0x408 |
Greek_CI_AS |
1253 |
古吉拉特语(印度)3 |
0x447 |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
希伯来语 |
0x40d |
Hebrew_CI_AS |
1255 |
印地语3 |
0x0439 |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
匈牙利语 |
0x40e |
Hungarian_CI_AS |
1250 |
匈牙利语(技术) |
0x104e |
Hungarian_Technical_CI_AS |
1250 |
北日耳曼语 |
0x40f |
Icelandic_CI_AS |
1252 |
印度尼西亚语 |
0x421 |
Latin1_General_CI_AS |
1252 |
意大利语(意大利) |
0x410 |
Latin1_General_CI_AS |
1252 |
意大利语(瑞士) |
0x810 |
Latin1_General_CI_AS |
1252 |
日语 |
0x411 |
Japanese_CI_AS |
932 |
卡纳达语(印度)3 |
0x44b |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
哈萨克语(哈萨克斯坦)1 |
0x43f |
Kazakh_90_CI_AS |
1251 |
贡根语(印度)3 |
0x457 |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
朝鲜语 (Extended Wansung) |
0x0412 |
Korean_Wansung_CI_AS |
949 |
吉尔吉斯语-西里尔语(吉尔吉斯坦共和国) |
0x440 |
Cyrillic_General_CI_AS |
1251 |
拉脱维亚语 |
0x426 |
Latvian_CI_AS |
1257 |
立陶宛语 |
0x427 |
Lithuanian_CI_AS |
1257 |
马其顿语 (FYROM) |
0x42f |
Macedonian_FYROM_90_CI_AS |
1251 |
马来语(文莱达鲁萨兰国) |
0x83e |
Latin1_General_CI_AS |
1252 |
马来语(马来西亚) |
0x43e |
Latin1_General_CI_AS |
1252 |
马拉地语(印度)3 |
0x44e |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
蒙古语-西里尔语(蒙古) |
0x450 |
Cyrillic_General_CI_AS |
1251 |
挪威语(博克马尔) |
0x414 |
Danish_Norwegian_CI_AS |
1252 |
挪威语(尼诺斯克) |
0x814 |
Danish_Norwegian_CI_AS |
1252 |
波兰语 |
0x415 |
Polish_CI_AS |
1250 |
葡萄牙语(巴西) |
0x416 |
Latin1_General_CI_AS |
1252 |
葡萄牙语(葡萄牙) |
0x816 |
Latin1_General_CI_AS |
1252 |
旁遮普语-果鲁穆奇语(印度)3 |
0x446 |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
罗马尼亚语 |
0x418 |
Romanian_CI_AS |
1250 |
俄罗斯语 |
0x419 |
Cyrillic_General_CI_AS |
1251 |
梵语(印度)3 |
0x44f |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
塞尔维亚语(西里尔) |
0xc1a |
Cyrillic_General_CI_AS |
1251 |
塞尔维亚语(拉丁) |
0x81a |
Cyrillic_General_CI_AS |
1250 |
斯洛伐克语 |
0x41b |
Slovak_CI_AS |
1250 |
斯洛文尼亚语 |
0x424 |
Slovenian_CI_AS |
1250 |
西班牙语(阿根廷) |
0x2c0a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(玻利维亚) |
0x400a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(智利) |
0x340a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(哥伦比亚) |
0x240a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(哥斯达黎加) |
0x140a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(多米尼加共和国) |
0x1c0a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(厄瓜多尔) |
0x300a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(萨尔瓦多) |
0x440a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(危地马拉) |
0x100a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(洪都拉斯) |
0x480a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(国际风格) |
0xc0a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(墨西哥) |
0x80a |
Modern_Spanish_CI_AS |
1252 |
西班牙(尼加拉瓜) |
0x4c0a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(巴拿马) |
0x180a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(巴拉圭) |
0x3c0a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(秘鲁) |
0x280a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(波多黎各) |
0x500a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(传统) |
0x40a |
Traditional_Spanish_CI_AS |
1252 |
西班牙语(乌拉圭) |
0x380a |
Modern_Spanish_CI_AS |
1252 |
西班牙语(委内瑞拉) |
0x200a |
Modern_Spanish_CI_AS |
1252 |
斯瓦希里语 |
0x441 |
Latin1_General_CI_AS |
1252 |
瑞典语 |
0x41d |
Finnish_Swedish_CI_AS |
1252 |
瑞典语(芬兰) |
0x81d |
Finnish_Swedish_CI_AS |
1252 |
叙利亚语(叙利亚)1 |
0x45a |
Syriac_90_CI_AS(仅 Unicode) |
Unicode |
泰米尔语(印度)1 |
0x449 |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
鞑靼语(鞑靼斯坦)1 |
0x444 |
Tatar_90_CI_AS |
1251 |
泰卢固语(印度)1 |
0x44a |
Indic_General_90_CI_AS(仅 Unicode) |
Unicode |
泰国语 |
0x41e |
Thai_CI_AS |
874 |
土耳其语 |
0x41f |
Turkish_CI_AS |
1254 |
乌克兰语 |
0x422 |
Ukrainian_CI_AS |
1251 |
乌尔都语 |
0x420 |
Arabic_CI_AS |
1256 |
乌兹别克语(拉丁)1 |
0x443 |
Uzbek_Latin_90_CI_AS |
1254 |
乌兹别克语-西里尔语(乌兹别克斯坦共和国) |
0x843 |
Cyrillic_General_CI_AS |
1251 |
越南语 |
0x42a |
Vietnamese_CI_AS |
1258 |
1SQL Server 2005 的新排序规则;这些排序规则使用 Windows 2003 排序表,因此支持补充字符。 BIN 和 BIN2 二进制排序都受新的 90 Windows 排序规则支持。
2使用拼音或发音排序。
3排序行为的主要更改;使用新的默认排序规则 Indic_General_90_CI_AS(仅 Unicode)。
4SQL Server 2005 中不推荐使用印地语排序规则,因为在此 SQL Server 版本中使用了 Windows 2000 排序表。 此排序规则仍然存在于服务器中,但它在将来的 SQL Server 版本中将不受支持,目前也不出现在 ::fn_helpcollations() 中。
5SQL Server 2005 中不推荐使用印地语和 Lithuanian_Classic 排序规则。 这些排序规则仍然存在于服务器中,但他们在将来的 SQL Server 版本中将不受支持,目前也不出现在 ::fn_helpcollations() 中。
请参阅
参考
排序规则选项与国际支持
排序规则设置
Windows 排序规则排序样式
概念
帮助和信息
更改历史记录
发布日期 | 历史记录 |
---|---|
2007 年 9 月 15 日 |
|
2005 年 12 月 5 日 |
|