(七)mysql 记录长度
MySQL记录长度
MySQL中规定:任何一条记录最长不能超过 65535个字节;
这句话,就表明 varchar 永远也达不到理论值 ;
varchar 的实际存储长度能达到多少,是需要看具体的字符集的;
UTF8下面,一个汉字占用三个字节,(65535-2 ) / 3 = 21844 ;
GBK下面,一个汉字占用二个字节,(65535-2) / 2 = 32766;
Mysql 还规定,如果一条记录中有任何一个字段允许为空,那么系统则从整条记录的 65535 个字节中抽出一个字节用于保存 NULL;
那我们想要保存大文本怎么办,选择用 text , text 不占用记录长度,但是怎么说也是记录的一部分,因此,其实 text 只占用记录的 10 个字节,用于保存数据的地址和长度 ;
基于上面的问题,有时候,我们创建表失败了,看思考下是不是记录长度太大了。

浙公网安备 33010602011771号