Mysql create table 建表报错: Row size too large. The maximum row size for the used table type, not count

Mysql create table 建表报错: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs

原因:

mysql单表所有行定义大小之和不得超过65535,除TEXT/BLOB类型
UTF-8:一个汉字占3个字节,字母1个字节。 GBK:一个汉字占2个字节,字母2个字节。

解决方案:

将长文本类型属性改为TEXT或者在合理要求内降低varchar的最大范围等,总之要符合以上规则

可以将长文本分表存储提高查询效率

你可能感兴趣的:(数据库原理,编程技巧,mysql,数据库)