一,设置列属性方式
--区分大小写
create table tbl
(
f1 varchar(10) collate chinese_prc_cs_as --区分大小写
)
--不区分大小写
create table tbl
(
f1 varchar(10) collate chinese_prc_ci_as --不区分大小写
)
insert into tbl values('abc');
insert into tbl values('Abc');
insert into tbl values('ABC');
select * from tbl where f1 = 'abc'
如果采用不区分大小写的字段属性,则结果是
abc
Abc
ABC
如果采用区分大小写的字段属性,则结果是
abc
二,直接针对db的
--区分大小写
alter database dbname collate chinese_prc_cs_as
--不区分大小写
alter database dbname collate chinese_prc_ci_as
三,查询时来转换
select * from tbl where convert(varbinary, f)=convert(varbinary, N'ABC')
四,数据库安装设置时就处理
这样数据库名,用户,表名,字段等都区分了
五,自己写函数来处理
不过这样效率较差,因为一般方法是逐个字符按照ascii编码比较
--区分大小写
create table tbl
(
f1 varchar(10) collate chinese_prc_cs_as --区分大小写
)
--不区分大小写
create table tbl
(
f1 varchar(10) collate chinese_prc_ci_as --不区分大小写
)
insert into tbl values('abc');
insert into tbl values('Abc');
insert into tbl values('ABC');
select * from tbl where f1 = 'abc'
如果采用不区分大小写的字段属性,则结果是
abc
Abc
ABC
如果采用区分大小写的字段属性,则结果是
abc
二,直接针对db的
--区分大小写
alter database dbname collate chinese_prc_cs_as
--不区分大小写
alter database dbname collate chinese_prc_ci_as
三,查询时来转换
select * from tbl where convert(varbinary, f)=convert(varbinary, N'ABC')
四,数据库安装设置时就处理
这样数据库名,用户,表名,字段等都区分了
五,自己写函数来处理
不过这样效率较差,因为一般方法是逐个字符按照ascii编码比较