Microsoft SQL Server 2000 的国际化功能(2)
2008-04-02 10:46:48来源:互联网 阅读 ()
排序规则
每个人都把排序的数据当作理所当然的东西;毕竟,有什么比字母表更基本呢? 我们当中的一些人可能会想到使用不同字母集的语言,如希腊语、俄语、泰语或日语。但至少在美国,每个人似乎都认为他们唯一需要考虑的就是字母表。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
问题是他们都错了! 无论您是否想了解懂西班牙语的用户为什么希望将字母组合“ch”放在字母“h”之后作为单个字符进行排序,您都必须知道非英语语言具备不同的排序规则。通常,最有效的疏远应用程式最终用户的方法之一就是把基本排序这样的任务弄错。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
要解决问题,能够利用排序规则(或排序顺序)和称作字符串标准化的技术。这里的“标准化”不同于数据库研发人员过去所习惯的标准化概念,因为他不是个设计问题;当您提到字符串标准化时,实际是在考虑如何比较两个字符串使他们能够排序。这能够通过创建索引来进行优化。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
对于非 Unicode 列,排序规则具备另一种很重要的含义:排序规则指定了数据的代码页,因而指定了能够显示哪些字符。数据能够在各 Unicode 列间毫无阻碍地移动,但数据却无法在非 Unicode 列中进行移动。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
SQL Server 6.5 和早期版本中的排序规则
在 SQL Server 6.5 和早期版本中,通常还依赖排序规则来指定用于语言的代码页。这些版本中存在和不同排序顺序(例如在各种拉丁语中)相关的限制。另外,假如您使用的是 Latin-1,则只能支持西欧语言。因此,在 SQL Server 单个例程上的信息中可显示的不同区域配置数(即特定区域中使用的不同语言的数目)受到了限制。这种基本问题同样适用于 SQL Server 后期版本中非 Unicode 字段的排序规则。此外,具备“最适合的”代码页的语言(例如前面在非 Unicode 文本类型:char、varchar 和 text 中提及的波斯语)方面的问题在这里也适用。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
SQL Server 7.0 中的排序规则
在每台服务器上,SQL Server 7.0 都有一个 Unicode 排序规则和一个非 Unicode 排序规则。由于每个代码页能够支持多种排序,所以非 Unicode 排序规则是由代码页和排序顺序 ID 两方面的决策组成的。例如,拉丁语言通常会既允许区分大小写的排序也允许不区分大小写的排序,而简体中文既允许按笔画排序也允许按拼音排序。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
在 Unicode 排序规则中,能够在列中包含任何语言的任何字符,所以在这里提供了各种可用的排序规则来确保任何特定于排序规则的差异都得到正确的处理。这是解决“最适合的”代码页问题的正确方法,因为假如使用一般的 Unicode 排序规则对波斯语数据进行排序,就能够为用户提供他们所需的数据。Unicode 排序规则由一个区域配置和多个比较样式组成。区域配置通常按国家或文化区域来命名。他们根据该区域中的标准对字符进行排序。Unicode 排序规则还为采用 Unicode 标准的任何字符提供了一种排序顺序,但指定的区域配置将具备优先权。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
下表列出了 SQL Server 7.0 中所支持的唯一 Unicode 排序规则。未列出的任何区域配置应该使用“通用 Unicode 排序规则”。www.chinai tp 采吧采吧不是罪 ow er.comkJ51Khx
区域配置 ID (LCID) | 说明 |
1033 | 通用 Unicode |
33280 | 二进制顺序 |
1027 | 加泰罗尼亚语 |
197636 | 中文汉语拼音字母(中国台湾地区) |
2052 | 中文标点符号 |
133124 | 中文笔画 |
1028 | 中文笔画(中国台湾地区) |
1050 | 克罗地亚语 |
1029 | 捷克语 |
1043 | 荷兰语 |
1061 | 爱沙尼亚语 |
1036 | 法语 |
66615 | 现代格鲁吉亚语 |
1031 | 德语 |
66567 | 德语电话簿 |
1038 | 匈牙利语 |
66574 | 匈牙利技术 |
1039 | 冰岛语 |
1040 | 意大利语 |
1041 | 日语 |
66577 | 日语 Unicode |
1042 | 朝鲜语 |
66578 | 朝鲜语 Unicode |
1062 | 拉脱维亚语 |
1063 | 立陶宛语 |
1071 | FYRO 马其顿语 |
1044 | 挪威语/丹麦语 |
1045 | 波兰语 |
1046 | 葡萄牙语 |
1048 | 罗马尼亚语 |
1051 | 斯络伐克语 |
1060 | 斯络文尼亚语 |
1034 | 传统西班牙语 |
3082 | 现代西班牙语 |
1053 | 瑞典语/芬兰语 |
1054 | 泰语 |
2057 | 英国英语 |
1058 | 乌克兰语 |
1066 | 越南语 |
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Microsoft SQL Server 2000 的国际化功能(1) 2008-04-02
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash