mysql varchar(20) 是20个字节 还是 20个字符?
这个问题一直有那么一点点的乱。
刚好今天有空整理一下
MySQL4.1前的 varchar(20) 是20个字节。最大的限制是255字节
MySQL5.0以后 varchar(20)是20个字符。最大的限制是65535-3占位符号=65532字节
也就是字符要按照字符集来计算最大能存的字符
GBK:65532/2 字符
UTF8:65532/3 字符
(具体计算结果,哈哈,自己拿计算器计算一下)
如果超出了 范围,会转为text 类型来存哦。
补充一点,我们除了关注单个字段的限制,还要关注行的限制。mysql一行最大是65535 也就是 64k.
好吧今天就到这里先了。