mssql sqlserver COLLATE关键字简介说明


摘要:
下文讲述sqlserver建库、列定义时排序规则的定义方法,如下所示:
实验环境:sql server 2008 R2



COLLATE关键字语法说明

COLLATE < collation_name >
—————————————————-
collation_name需输入:
Windows_collation_name 或 SQL_collation_name的名称。
—————————————————-
Windows_collation_name:
windows排序规则涉及的排序名称
SQL_collation_name:
sqlserver排序规则涉及的排序名称

COLLATE关键字应用场景

1.创建或更改数据库信息时,如果不指定排序规则,则继承操作系统的排序规则

     create database 
	 或
	 alter database
	 后跟上collate子句,可为数据库指定排序规则或修改数据库排序规则
  

2.创建或修改列时,如果不指定列的排序规则,将继承数据库的排序规则

    add   column 
	或
	alter column 
 

3.查询语句时,指定列的排序规则

     select  * from [表名] WHERE [列名] like '%maomao%'
       collate Chinese_PRC_CS_AI
  


COLLATE关键字举例应用

   CREATE TABLE test  
(info varchar(68) NOT NULL);  
GO  
INSERT test(info) VALUES ('maomao365.com'),(N'sql教程博客')  
                             , ('A排名规则'), ('B演示脚本');  
GO  
--collate 子句应用 
SELECT info FROM test  
ORDER BY info  
COLLATE Chinese_PRC_CI_AS asc;  
GO  
 

go
truncate table test
drop table test


collate子句注意事项:
collate只能应用于 char varchar text nchar nvarchar ntext六种数据类型上。