3.字符集utf8 gbk big5 utf8与character set与校对规collaction则 二进制与非二进制字符串类型使用...

二进制

binary,varbinary,blob

声音、图像等二进制数据

声音和图像的地址保存在表里面 不建议直接将它们保存在表里
与字符集无关的
如果没有指定是image类型 会当成普通文本显示    会出现乱码
凡事文本会有字符集来处理这个文本

非二进制
char,varchar,text    字符集utf8 gbk big5 字符集校对规则

gb2312 是一个比较早的字符集规范 大概包括6700多个汉子 2个字节来存储也就是说输入一个字要占用两个字节的空间

big5 繁体字符集 台湾 香港 使用繁体 13000多个汉子 大五码 2个字节

gbk编码       21000多个汉子    简体+繁体 2个字节 

utf-8字符集编码    可以在一个页面中体现多个语种,多个国家的文字内容 1-3字节
a 1字节 盾 3字节

unicode 国际标准化组织指定一套涵盖时间上所有语种、所有符号的编码方案
后盾 4个字节的空间

show character set;    显示字符集
比较字符集
use  webclass;
create table demo(name varchar(30) character set utf8 , name2 varcher(30) character set gbk);
分别设置成utf8和gbk字符集
show create table demo; 查看使用的字符集
insert into demo(name,name2) values("盾","盾");
insert into demo(name,name2) values("a","a");
select length(name) ,length(name2) from demo; 查看字符集长度字节

由此可见:相同的字符 utf8要比gbk多占用30%的空间
所以国内的站就使用gbk编码方式 如果要多语言的支持就是用utf8的编码方式
在处理单字节的文字字符的时候是没有差异的

select char_length(name).char_length(name) from demo;    不考虑字节单显示字的个数
show collation;    显示字符集校对规则
create table demo2(name varchar(30) character set utf8 collate utf8_bin ,name2 varchar(30) character set utf8 collate utf8_general_ci);
insert into demo2(name ,name2) values('a' , 'a') , ('b' , 'b') ,('A' ,'A');    插入三条数据
select * from demo2 where name2 ='a';
大写的A也出来了
但通过select * from demo2 where name='a';
只出来了小a
 
由此可见:第一个字符比对的时候是不区分大小写 而第二个是区分区分我们正常使用utf8_bin_ci
 
select * from demo2 order by name2;
select * from demo2 order by name;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值