首页 > 其他 > 详细

21_字符集与校对集

时间:2015-05-20 18:41:36      阅读:277      评论:0      收藏:0      [点我收藏+]
字符集与校对集
create table 表名(
列声明
)charset utf8;

上面这个charset utf8指定服务器字符类型。

-----------------------------------------------
字符集:
mysql的字符集设置非常灵活。
可以设置服务器默认字符集,
可以设置数据库默认字符集,
表默认字符集,
列字符集,
如果某一个级别没有指定字符集,则继承上一级。



1.告诉服务器,我给你发的数据是什么编码的?set character_set_client=utf8
2.告诉转换器,转换成什么编码?set character_set_connection=utf8
3.查询的结果用什么编码?set character_set_results=utf8

以上三者都为字符集N,那么可以简写成 set names N



------------------------------------------------------
校对集:指字符集的排序规则
一种字符集可以有一个或者多个排序规则
以UTF8为例,我们默认使用的是UTF8_general_ci,
也可以按ASCII来排,utf8_bin


怎么样声明校对集?
create table()charset utf8 collate utf8_bin

注意:声明的校对集必须是字符集合法的校对集。


例1,建表时不指定校对集,默认是不分大小写的utf8_general_ci,如:
create table tmp (name char(5));
insert into tmp values (‘a‘),("B"),("c"),("D");
select * from tmp order by name;
+------+
| name |
+------+
| a    |
| B    |
| c    |
| D    |
+------+

例2,建表时指定校对集:
create table tmp (name char(5))charset utf8 collate utf8_bin;
insert into tmp values (‘a‘),("B"),("c"),("D");
select * from tmp order by name;
+------+
| name |
+------+
| B    |
| D    |
| a    |
| c    |
+------+


21_字符集与校对集

原文:http://1154179272.blog.51cto.com/10217799/1653262

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!