码迷,mamicode.com
首页 > 数据库 > 详细

Mysql字符集以及校对规则

时间:2015-08-01 01:15:32      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:字符集   校对规则   

编码:计算机都是二进制存储,因此需要将显示符号转换成二进制数才能存储,每个字符所转换成的二进制数,就是字符编码。

字符集

字符用于显示的抽象符号。字符集是一套字符与字符编码的集合。

常见的字符集编码:
Ascii字符集,GB2312字符集,gbk字符集,latin1字符集,unicode字符集等。

show character set;可以获得MySQL支持的所有字符集。

修改数据库字符集
alter database liguodong character set utf8;

MySQL可以使用多种字符集保存数据。
MySQL可以针对字段,表,数据库,服务器进行字符集的设置,还可以设定连接字符集(客户端与服务器端交互时)。

编码相关变量的含义:
技术分享
可以在my.ini中:character-set-server=utf8修改服务器的编码设置。

服务器字符集:
技术分享

连接字符集:
技术分享

校对规则:

每一套编码字符集都有与之相关的校对规则。校对规则指的是当前字符集内,字符之间的比较关系。
每个字符集都提供一个或多个校对规则。
通常的命名规则是:字符集_语言名_ci|cs|bin

常见的ci不区分大小写。cs区分大小写,bin字节比较。

查看校对规则指令:

show collation;

show collation like ‘gbk%‘;

在设置字符集的时候,可以设置当前字符集所采用的校对规则。不过不设置校对规则,那么每一个字符集,都有一个默认的校对规则。

以gbk为例,比较chinese_ci,bin之间的区别

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

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

默认是gbk_chinese_ci,所以不会显示字符集。

show create table tab3\G
show create table tab4\G

技术分享
技术分享

insert into tab3 values(‘a‘);
insert into tab3 values(‘B‘);
insert into tab3 values(‘c‘);
insert into tab4 values(‘a‘);
insert into tab4 values(‘B‘);
insert into tab4 values(‘c‘);

技术分享

影响数据的保存,字符集。
影像数据的比较,校对集。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Mysql字符集以及校对规则

标签:字符集   校对规则   

原文地址:http://blog.csdn.net/scgaliguodong123_/article/details/46671515

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!