这里讲一下编码,涵盖内容包括:gbk、utf8编码,汉字,数据库,为什么会出现乱码。
Mysql库,character为utf_8
建表test: create table test(a varchar(20));
1
利用length,char_length函数看到字符串‘啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊’在utf_8的编码下占用了60byte空间,以及20个字符的位置。
mysql varchar(20) ;表明字段可以容纳20个字符的字符串,汉字字母均为一个字符;
ORACLE:
2
插入字符串‘啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊’报错 显示超长。
继续
3
利用函数length,lengthb的得到字符串的占用字符以及字节。
oracle varchar2(20) 标识字段最多可以容纳20个字节,汉字的占用字节需要依赖具体的数据库编码确定
本文讲解了gbk、utf8等编码方式,并通过Mysql和Oracle数据库实例演示了不同编码下,汉字占用的空间及如何影响字段长度。了解这些可以帮助解决数据库中出现乱码的问题。
1046

被折叠的 条评论
为什么被折叠?



