2009年3月27日星期五

让SQL Server中指定的列区分大小写

有时我们需要在数据库中指定的列进行查询时区分大小写,这个在SQL Server中可以通过设定排序规则来实现。

【版本要求】
在SQL Server7.0以前,只能设定整个服务器的排序规则,这套服务器上的所有数据库都与服务器设定相同,而且更改很麻烦。之后的版本允许在数据库级别和列级别设定排序规则。

【设定方法】
例如,整个数据库的排序规则设定为不区分大小写,现在需要在一个指定的列上区分,我们可以这样创建表:
create table tab1
( a int not null,
b varchar(30) collate Chinese_PRC_CS_AS not null)
go
然后插入数据:
insert into tab1 values(1,'tom')
insert into tab1 values(2,'Tom')
这样查询:
select * from tab1 where b = 'Tom'
在结果中就只有第二行了。

没有评论: