MySQL
记录长度
在MySQL
中,有一项规定:MySQL
的记录长度(record即行 row)总长度不能超过65535
个字节
varchar
能够存储的理论值为65535
个字符:字符在不同的字符集下可能占用多个字节。
测试案例(varchar
在MySQL
中能够达到的理论值)
-
创建表
create table my_varchar( name varchar(65535) )charset=utf8;
-
计算在
utf8
和gbk
下对应varchar
能够存储的长度-
utf8时
65535/3=21845,如果采用
varchar
存储还要额外两个字节保存长度因此
utf8
最多能存储21844
个字符 -
gbk时
65535/2=32767 | 1,如果采用
varchar
存储还需要额外两个字节来保存长度gbk
最多能存储32766
个字符
-