WEB开发网
开发学院数据库MSSQL Server 合理配置二进制排序规则 阅读

合理配置二进制排序规则

 2010-10-01 09:00:24 来源:WEB开发网   
核心提示: 二、对于Unicode数据与非Unicode数据的不同处理,在采用二进制排序规则的情况下,合理配置二进制排序规则(2),对于Unicode数据与非Unicode数据其处理的方式是不同的,也就是说,以减少排序结果的误差,这就是二进制排序规则下,即使记录的内容是相同的,但是如果其数据的保存格式

二、对于Unicode数据与非Unicode数据的不同处理。

在采用二进制排序规则的情况下,对于Unicode数据与非Unicode数据其处理的方式是不同的。也就是说,即使记录的内容是相同的,但是如果其数据的保存格式不同。如某个表中是采用Unicode数据类型,而另一张表中采用的是非unicode数据类型。即使两张表中的记录完全相同,由于数据保存格式不同,在采用二进制排序时,其最后的结构有可能不同。这主要是因为排序时由于字符集不同,其内部处理的机制也是不同的。如对于Unicode数据类型来说,排序操作时数据比较是基于Unicode码位。而对于非Unicode数据类系国内来说,排序操作时数据比较是基于ANSI代码页中定义的码位。因为记录比较时所采用的码位不同,所以相同记录、数据类型不同则最后排序的结果可能有所不同。这就是Unicode数据类型与非Unicode数据类型在排序时的最大差异之一。

另外如果采用二进制排序规则,并且采用的是Unicode数据了性,还有一个很大的特点,即在排序时不会考虑区域设置。如现在有两张表,他们表中的记录相同,但是采用的区域设置不同。对于Unicode数据类型来说,进行二进制排序操作之后得到的结果是相同的。因为此时在进行排序操作时,数据库是不会考虑区域设置的影响。但是如果采用的是非Unicode数据类型,则最后排序结果很有可能不同。因为对于非Unicode数据类型来说,数据库系统会考虑区域设置的影响。所以如果在一些数据库应用中,存在不同的区域设置时,数据库管理员就需要知道Unicode数据类型与非Unicode数据类型对排序规则的影响。如果需要在不同的区域设置下,最后的排序结果是相同的,那么就最好将这个数据类型设置为Unicode的数据类型。以减少排序结果的误差。这就是二进制排序规则下,Unicode数据类型与非Unicode数据类型的又一个不同之处。

上一页  1 2 3 4  下一页

Tags:合理 配置 二进制

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接