1、SQL Server
-- SELECT * FROM 表名 WHERE 列名 COLLATE Chinese_PRC_CS_AS ='字符'
-- SELECT * FROM 表名 WHERE 列名 COLLATE Chinese_PRC_CS_AS like '%字符%'
-- SELECT * FROM 表名 WHERE 列名 COLLATE Chinese_PRC_CS_AS in('字符1','字符2',...)
Chinese_PRC_ 对大陆简体字UNICODE的排序规则
C:case,大小写
A:accent,重音
K:kanatype,假名
W:width,宽度
I:insensitive, 不敏感,不区分
S:sensitive,敏感,区分
如 CS 就是case-sensitive,区分大小写,AS就是accent-sensitive,区分重音
2、MySql
-- SELECT * FROM U WHERE NAME LIKE 'g%';
-- SELECT * FROM U WHERE NAME LIKE 'G%';
其结果是一样的
-- SELECT * FROM U WHERE binary NAME LIKE 'g%';
-- SELECT * FROM U WHERE binary NAME LIKE 'G%';
多加一个binary,就可以得到不同的结果!
如果需要建表时强制区分大小写,可以:
-- create table U(
name varchar (20) binary
);
3、通常不建议设置数据库中的字段大小写敏感。
若数据库的数据量达到百万级,字段类型变可能导致数据库宕机。