关于varchar(m) 的m到底限制的是什么问题

关于varchar(m) 的m到底限制的是什么问题

相信很多人都百度查询了很多,但是很多答案:有的说是字符,有的说是字节,也有的说在mysql4以下是字节长度。
这里我们测试一下,先不说结论,下面使用的mysql是5版本:
关于varchar(m) 的m到底限制的是什么问题_第1张图片
这里创建一个msg字段,设置varchar(10)。
然后考虑编码问题,utf8中文是占3个字符,gbk是两个字符。然后我们输入五个汉子 ,然后点击保存。

你你你你你

关于varchar(m) 的m到底限制的是什么问题_第2张图片
点击保存并没有报错,可以说明varchar(m),限制的是文本的长度,而不是什么字符字节长度。
当我们输入11个你的时候
关于varchar(m) 的m到底限制的是什么问题_第3张图片很明显结论出来了。varchar(m) 5版本以上,是限制文本长度的。并不是限制大小。

你可能感兴趣的:(笔记,mysql)