mysql char varchar 二三事

mysql char和varchar很类似。

char最大长度为255,存入不够255个字符时,右边补充spaces填充。

varchar最大长度为65535。

varchar(n)比char(n)多一个或两个字节,用来确定varchar value的长度。当value不超过255个字符,额外的一个字节即可。value超过255个字符时,需要2个字节。

查询效率对比:因为varchar需要根据额外的字节定位value的长度,所以要比char速度慢。

row包含varchar和char的情形 查询效率
包含char和varchar
仅包含varchar
仅包含char

char(10)填充'1234567890'时,char(10)占用10个字符而不是10个字节。具体占用字节根据database collation set决定。

varchar(10)和varchar(255)的区别:当只写入一个'a',查询需要临时表时,varchar(255)将分配255字符。varchar(10)只分配10个字符。

posted on 2016-05-15 19:13  magic.xiao  阅读(541)  评论(0)    收藏  举报

导航