您的位置:首页 > 数据库

sql server where 条件 区分大小写查询

2016-08-24 10:47 148 查看
1.在创建数据库时,指定要区分大小写,或者后期再做更改也可以alter database dbname collate chinese_prc_cs_as

2.在创建表时,指定要区分大小写,或者后期再做更改也可以 alter table tbname collate chinese_prc_cs_as

3.如果只是想使用一次,不想修改整个表或整个数据库。

3.1可以在使用时,将查询或使用到的字段,转成二进制形式进行比较就可以了(大小写的二进制形式肯定是不一样的~)

3.2可以在查询或使用时,指名使用 简体中文做为数据库的查询规则。

指定SQL server的排序规则

Chinese_PRC指的是中国大陆地区,如果是台湾地区则为Chinese_Taiwan

CI指定不区分大小写,如果要在查询时区分输入的大小写则改为CS

AS指定区分重音,同样如果不需要区分重音,则改为AI

COLLATE可以针对整个数据库更改排序规则,也可以单独修改某一个表或者某一个字段的排序规则,指定排序规则很有用,比如用户管理表,需要验证输入的用户名和密码的正确性,一般是要区分大小写的。

使用collate:
select * from 表 where 字段='King' collate chinese_prc_cs_as

或者

转换为varbinary

select * from 表 where convert(varbinary(1000),字段)=convert(varbinary(1000),'King')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: