MySQL各字符集下汉字和字母占字节数
varchar(N), 这里的N是指字符数,并不是字节数.占用的字节数与编码有关
在mysql 5.1.5-alpha下测试得出如下结论
latin1:
1character=1byte, 1汉字=2character,
也就是说一个字段定义成 varchar(200),则它可以存储100个汉字或者200个字母。
这一点要注意,尤其是当字段内容是字母和汉字组成时,尽量假设字段内容都是由汉字组成,据此来设置字段长度
utf8:
1character=3bytes, 1汉字=1character
也就是说一个字段定义成 varchar(200),则它可以存储200个汉字或者200个字母。
gbk:
1character=2bytes,1汉字=1character
也就是说一个字段定义成 varchar(200),则它可以存储200个汉字或者200个字母。