项目场景:

mysql添加varchar字段

问题描述

mysql表添加一个varchar类型的字段,执行保存时报错:Row size too large. The maximum row size for the used table type, not counting BLOBs, is 6553 巴拉巴拉

原因分析:

行数据大小的最大限制为 65,535 字节。 如果表中包含多个 VARCHAR 类型的字段,并且它们的总长度超过了上述限制,则会出现 上述错误。这是因为 MySQL 在内部使用固定大小的页面来存储行数据,因此需要确保每个行都小于或等于页面大小。

比如我使用 utf8mb4 字符集,每个字符最多使用 4 个字节,因此表中所有VARCHAR类型字段 长度之和 * 4 要小于 65,535。

解决方案:

1.将一个或多个字段更改为使用 TEXT 类型或 BLOB 类型。 2.表中的某些字段更改为固定长度类型(如 CHAR)。

推荐文章

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。