• 欢迎访问水熊虫网站,这里是我个人的工作博客,内容大多是遇到问题完善后,会在这里进行总结归纳内容! QQ群
  • 网站导航中的友情链接专栏上线,更新的都是自己这三年整理的一些东西,感兴趣可以看看!
  • 你所浪费的今天,是昨天死去的人奢望的明天。你所厌恶的现在,是未来的你回不去的曾经!

教你管理SQLServer实例(6)服务器排序规则

MSSQL WaterBear 7年前 (2017-05-09) 843次浏览 已收录 扫描二维码

一、排序规则的概念
  SQL Server能存储许多种世界上的书写语言中使用的文字。然尔,并非每一种语言都遵循相同的排序或数据比较规则。排序规则(collation sequence)控制着SQL Server在执行存储、检索、排序和比较操作时如何对待字符数据。
  排序规则定义了支持的字符集,包括是否区分大小写、重音及假名。例如,英文版SQL Server默认的排序规则是SQL_Latin1_General_CP1_CI_AS,那么获得的就是对西欧字符集的支持,它不区分大小写(case-insensitive),对重音敏感(accent-sensitive)。执行排序操作时,不区分大小写,则会将e和E看成是相同的字符;区分重音,则会将E、È、É、Ê、Ë看成不同的字符。
  中文版SQL Server的默认排序规则是Chinese_PRC_CI_AS,表示针对大陆简体字Unicode排序,不区分大小写,但对重音敏感。

二、安装SQL Server时指定排序规则
  服务器(实例)的排序规则,在安装SQL Server时就需要指定。在安装时,将指定所有数据库、表和列使用的一个默认排序规则。在安装完成后,可以在每个级别上覆盖默认的排序规则,将在后续内容中详细讲解。

教你管理SQLServer实例(6)服务器排序规则

三、查看服务器(实例)的排序规则
  可以通过SSMS查看当前服务器(实例)的排序规则。

教你管理SQLServer实例(6)服务器排序规则

实例的排序规则很重要。首先,它定义了字符集,这对char、varchar数据类型的列尤其重要,不然数据都成了问号。其次,临时表排序时使用了tempdb的排序规则(即实例的排序规则),如果发生冲突,会报错。

安装SQL Server 2005的时候,Chinese_PRC_CI_AS是这样选择的

教你管理SQLServer实例(6)服务器排序规则

从截图中可以看出:“执行排序操作时,不区分大小写,则会将e和E看成是相同的字符;区分重音,则会将E、È、É、Ê、Ë看成不同的字符。”对于简体中文字符排序,一般为拼音排序;对于繁体中文,一般按笔划排序。貌似德文、法文可以对重音敏感。

转载文章地址:http://bbs.51cto.com/thread-1075769-1.html


WaterBear , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:教你管理SQLServer实例(6)服务器排序规则
喜欢 (0)
[[email protected]]
分享 (0)