SQL Server不区分大小写的问题

时间:2022-02-27 01:18:11

SQL Server不区分大小写的问题

 

  默认情况下,SQL Server不区分大小写,如果数据表TEST的TNAME列中有数据“abcd”和“Abcd”, 如果使用查询语句:select * from test  where  tname  like 'a%',则查询的结果会把上面的两条记录都查询出来,这一点上和Oracle有区别.

 

 可以通过设置排序规使其区分大小写,可以分别在创建数据库、修改数据库、创建表的字符型列(char\varchar\nchar

\nvarchar等)时指定排序规则来实现。如

create database test  COLLATE  Chinese_PRC_CS_AS   --这样创建的数据库中区分大小写

alter database test  COLLATE  Chinese_PRC_CS_AS   --修改后的数据库中区分大小写

Create table test(tid int primary key,tname varchar(20) COLLATE  Chinese_PRC_CS_AS) --这样创建的tname列在使用SELECT 语句时就可以区分大小写了。