SQL错误:42000

错误:

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 BLOB

原因:创建表的时候,字段超长了

例如

CREATE TABLE `t_error35` ( `id` varchar(255) NOT NULL COMMENT '主键', `class_name` varchar(65278) NOT NULL COMMENT '错误码对应类名' ) ENGINE=InnoDB CHARSET=ascii ROW_FORMAT=COMPACT;

65535是最大的值,255+ 1(变长长度)+ 65278 (大于255)+ 2(变长长度) = 65536

解决:将class_name 设置为 BLOB或者TEXT

解决思路 来源于 MySQL 一行记录是怎么存储的? | 小林coding

相关推荐
Dlwyz8 分钟前
问题: redis-高并发场景下如何保证缓存数据与数据库的最终一致性
数据库·redis·缓存
如意机反光镜裸1 小时前
如何快速将Excel数据导入到SQL Server数据库
数据库
不爱学习的啊Biao1 小时前
初识mysql数据库
数据库·mysql·oracle
执键行天涯1 小时前
【日常经验】修改大数据量的表字段类型,怎么修改更快
sql
宛唐羁客2 小时前
ODBC连接PostgreSQL数据库后,网卡DOWN后,客户端进程阻塞问题解决方法
网络·数据库
sevevty-seven2 小时前
幻读是什么?用什么隔离级别可以防止幻读
大数据·sql
吴半杯3 小时前
Redis-monitor安装与配置
数据库·redis·缓存
是桃萌萌鸭~3 小时前
mysqldbcompare 使用及参数详解
数据库·mysql
gma9993 小时前
brpc 与 Etcd 二次封装
数据库·c++·rpc·etcd
Yz98764 小时前
hive复杂数据类型Array & Map & Struct & 炸裂函数explode
大数据·数据库·数据仓库·hive·hadoop·数据库开发·big data