MySql中的varchar长度究竟是字节还是字符

今天在设计表的时候,遇到个小问题,由于不知道未来将要存储的数据有多长(数据是通过第三方http接口提供的,根据sample显示,数据大概是如下:)

也就是6个字符。

我在设计表的时候,有点犹豫,本来准备设计为varchar(6),但担心是按字节计算的,会导致存不下。(数据库采用utf8编码)

于是自己试了下,

 

可以存放5个utf8字符。看来Mysql的varchar是按照字符来计算的。

 

然后也查阅了一下网上的答案:

也就是version4之前,按字节;

version5之后,按字符。

 

posted @ 2017-03-23 11:21  三国梦回  阅读(26768)  评论(0编辑  收藏  举报