首页 > 技术文章 > 校对规则

wyqiang 2013-08-23 08:23 原文


通过mysql的配置:
character_set_client客户端发送数据编码
character_set_result客户端接收数据的编码

通过指令show variables like 'character_set_%';


 

每一套,编码字符集都有与之相关的校对规则。
什么事校对规则?
在当前编码下,字符之间的比较顺序是什么。

每个字符集都支持不定数量的校对规则,
可以通过如下指令:
>show collation;
可以看到:字符集_地区名_比较规则
ci/cs/bin 不区分大小写、区分、字节比较
可以使用like:
>show collation like 'uft8%';
在设置字符集的时候,可是设置当前字符集所采用的校对规则,
如果不设置校对规则,那么每个字符集都与一个默认的校对规则。
以gbk为例,比较chinese_ci bin之间的区别。
order by 关键字,可以在获得数据时,激昂数据进行按照某个字段的排序。



>create table tbl3(
name varchar(10)
)character set gbk collate gbk_chinese_ci;

>create table tbl4(
name varchar(10)
)character set gbk collate gbk_bin;

>insert into tbl3 values ('a');
>insert into tbl3 values ('B');
>insert into tbl3 values ('c');


>insert into tbl4 values ('a');
>insert into tbl4 values ('B');
>insert into tbl4 values ('c');

>select * from tabl3 order by name;
>select * from tabl4 order by name;

推荐阅读