Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This

一、问题分析

1.1、产生问题的原因一

  • 这里的问题的意思是:单行数据长度不能超过65535个字节。但是不包括(TEXT、BLOB类型);
  • 单行数据长度计算方式:一张表的字段长度*3(乘以3是因为数据库用的utf8编码,3个字节表示一个字符)。
  • 比如:一张表有三个字段,
    a varchar(20);
    b varchar(20);
    c varchar(20);
    则单行数据长度 = (20+20+20)*3。

1.2、产生问题的原因二

  • 单个字段长度大于65535,也会报这个错误;

二、解决方法

2.1、原因一解决方案

  • 只需要将varchar类型改成TEXT类型;

2.2、原因二解决方案

  • 尚未查询,如果有人知道,可以留言。

版权声明:本文为qq_46111881原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。