SQL Server的 “混合排序规则环境”
日期:2007年10月22日 作者: 查看:[大字体 中字体 小字体]-
混合排序规则环境
兼容性问题对使用多个排序规则存储数据的组织会有影响。大多数组织对所有的 Microsoft® SQL Server™ 2000 数据库使用相同的排序规则,从而消除了所有的排序规则兼容性问题。然而,有些组织存储的数据必须可由使用不同语言的用户查看,并且希望尽可能减少排序规则兼容性问题。
所有字符和 Unicode 对象(如列、变量和常量)都有排序规则。每当使用具有不同排序规则和代码页的对象时,都必须对查询进行编码以符合排序规则类型强制规则。当对使用运算符将多个具有不同排序规则的简单表达式组合在一起的复杂表达式进行编码时,所有排序规则必须可以隐性转换,或者可以使用 COLLATE 子句显式转换。
如果没有在字符或 Unicode 表达式中指定排序规则,则默认排序规则可能因连接的当前数据库设置而异。例如,如果没有在字符或 Unicode 常量上指定 COLLATE 子句,则将给该常量指派当前数据库的默认排序规则。这意味着 Transact-SQL 语句的结果在不同数据库的上下文中执行时可能有不同的排序规则。
若设置复制,则复制网络(包括发布服务器、订阅服务器和分发服务器)中包括的所有数据库都必须使用相同的代码页。
大容量复制函数 BULK INSERT 和 bcp 命令提示实用工具支持列排序规则。
尽可能减少排序规则问题
如果必须存储反映多种语言的字符数据,始终使用 Unicode nchar、nvarchar 和 ntext 数据类型(而不是 char、varchar、text 数据类型)可使排序规则兼容性问题减到最少。使用 Unicode 数据类型可消除代码页转换问题。
对减少排序规则兼容性问题的另一个建议是使站点标准化,使之区分或不区分大小写和重音字符。若始终选择对大小写和重音使用相同敏感性的排序规则,最终用户将在所有系统间体验到一致的行为。大多数 SQL Server 2000 站点选择不区分大小写但区分重音。大小写敏感性还适用于 SQL Server 的对象名;因此,若指定区分大小写的排序规则,则所有用户在查询数据库时必须指定正确的大小写。例如,若服务器区分大小写并创建一个名为 Employees 的表,则所有的查询都必须将该表引用为 Employees。未使用正确大小写的引用(如 EMPLOYEES 或 employees)将无效。
排序规则和 tempdb
每次启动 SQL Server 时都生成 tempdb 数据库,该数据库与 model 数据库的默认排序规则相同,后者通常与实例的默认排序规则相同。如果为创建的用户数据库指定的默认排序规则与 model 的排序规则不同,则该用户数据库与 tempdb 的默认排序规则也不同。所有的临时存储过程或临时表都创建并存储在 tempdb 中,这意味着临时表中的所有隐性列以及临时存储过程中的所有类型强制默认常量、变量和参数与永久表和永久存储过程中创建的对等对象使用不同的排序规则。
text 数据类型可能由此产生问题。例如,某个 SQL Server 2000 实例的默认排序规则是atin1_General_CS_AS,并且执行以下语句:
CREATE DATABASE TestDB COLLATE Estonian_CS_AS
USE TestDB
CREATE TABLE TestPermTab (PrimaryKey int PRIMARY KEY, TextCol text )在该系统中,tempdb 数据库对代码页 1252 使用 Latin1_General_CS_AS 排序规则,TestDB 和 TestPermTab.TextCol 对代码页 1257 使用 Estonian_CS_AS 排序规则。如果接下来执行:
USE TestDB
GO - [1] [2] [3] 下一页
-
- SQL Server的 “混合排序规则环境” 相关文章:
- ·圣诞节日花环花束设计欣赏
- ·Windows XP下PHP+MySQL环境搭建
- ·Word 2007中给数字标识循环节的两方法种
- ·把SQL数据库部署到远程主机环境
- ·多用户环境下活用软件限制策略
- ·PS简单方法改变照片环境的色彩氛围
- ·关于Exchange循环日志和备份
- ·MySQL安装的故障诊断与排除(Windows环境)
- ·SQL Server的 “混合排序规则环境”
- ·Windows IIS环境下安装和配置PHP开发环境
- SQL Server的 “混合排序规则环境” 相关软件
- ·【连环画】铁道游击队 01 血染洋行(沪美版)
- ·《模拟人生2之环游世界》免CD补丁
- ·那些消失的童年——中国连环画(小人书)封面
- ·西洋彩色连环画《Couverture》1-2
- ·文革版连环画:《一条红鲤鱼》
- ·连环画:三国演义之27《赤壁大战》
- ·年画连环画《梅玉配》
- ·童话连环画-《阿里巴巴和四十大盗》
- ·紫姑星(连环画)
- ·小白龙泉(民间故事连环画)
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:数据备份失败的五个原因及解决办法
精品推荐
热点TOP10
- ·SQL Server 练习题
- ·MS-SQL开发常用汇总和t-sql技巧集锦
- ·查询及删除重复记录的方法大全
- ·SQL server 2005安装问题汇总
- ·MS SQL的一些经典常用操作语句汇总
- ·SQL语法大全
- ·掌握SQL Server数据库的实用技巧
- ·解决用sa登录sql 2005失败的问题
- ·SQL Server建立应用程序安全性和程序角色
- ·轻松掌握使用 SQL Server 浏览器
- ·SQL Server安全问题全攻略之口令
- ·SQL Server 2005 中的分区表和索引
- ·sql server2000导入mdf文件
- ·一个复合查询方法
- ·如何创建SQL Server 2000故障转移群集
- ·SQL Server 2000企业版安装教程(1)
- ·SQL Server 2005 Reporting Services 初次使用感受
- ·使用用于SQL Server的IIS虚拟目录管理实用工具
- ·SQL Server中函数的用法两种
- ·改进SQL Server数据库系统安全五步走
特别推荐
- ·结束SQL注入隐患3招
- ·掌握SQL Server数据库的实用技巧
- ·SQL的简单查询
- ·快速解决SQL Server“安全疑难”相关问题
- ·SQL Server 2005:你应知道的13件事
- ·实例解析:减少SQL日志大小的三个好方法
- ·使用SQL2000将现有代码作为Web服务提供
- ·sql server 2000数据库置疑的解决方法
- ·SQL Server安全问题全攻略之口令
- ·XP上不能安装MicrosoftSQLSERVER2000吗
- ·解析Microsoft Sql Server中的like语句
- ·推荐;适合SQL初学者学习的SQL FAQ集锦
- ·SQL Server 2005 中的分区表和索引
- ·查询及删除重复记录的方法大全
- ·详细介绍优化SQL Server 2000的设置
- ·关于SQL SERVER 日志满的处理方法
- ·使用SQL Server 2000索引视图提高性能
- ·SQL server 2005安装问题汇总
- ·解决用sa登录sql 2005失败的问题
- ·简单三步走堵死SQL Server注入漏洞
