主要原因有2:
1.
MySQL的一个Row的不包含Text和Blob的最大长度是65535。
也就是说如果你建一个表,存在这样两个字段:varchar(35000),
varchar(48000)是无法创建的。
会得到提示:
Row size too large. The maximum row size for
the used table type, not counting BLOBs, is 65535. You have to change some
columns to TEXT or BLOBs.
2.
在进行排序和创建临时表一类的内存操作时,会使用n的长度申请内存。
也就是说varchar(5)和varchar(200)相比,后者申请的内存近似是前者的40倍。
阅读(1296) | 评论(0) | 转发(0) |