更新日期: 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)排序规则版本,以支持对排序行为的更改.gif) 重要提示: 重要提示:这些版本更新都显著影响排序和比较行为。 在这些排序规则升级到 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 日 | 
 |