错误码 | 说明 |
1000 ~ 1099:通用查询 / 连接相关错误 | |
1030 | 磁盘空间不足、表损坏 |
1031 | 存储引擎不兼容操作 |
1033 | frm 文件损坏或存储引擎问题 |
1037、1038、1041 | 内存不足 |
1040 | 连接数超出数据库 / 服务的阈值 |
1047 | 未识别的操作 |
1048 | 字段为非空(NOT NULL),但插入 / 更新时未提供值 |
1055 | 与1140同源,是 ONLY_FULL_GROUP_BY 模式下的严格校验:SELECT 中的非聚合列未在 GROUP BY 中,且该列与分组列无函数依赖 |
1100 ~ 1199:表 / 索引操作相关错误 | |
1109 | 引用的表别名不存在(SQL 中使用了未定义的表别名) |
1115 | 字段兼容性问题(一般和 MySQL 版本有关) |
1136 | INSERT 语句中指定的字段数量与实际传入的值数量不匹配 |
1140 | MySQL 开启了 ONLY_FULL_GROUP_BY 模式(默认开启),SELECT 中同时包含聚合函数(MIN/MAX/COUNT 等)和非聚合列,且未用 GROUP BY 分组非聚合列;(sql_mode 相关) |
1193 | 未知系统变量 |
1200 ~ 1299:事务 / 锁相关错误 | |
1227 | 权限不足,无法执行当前操作 |
1248 | 所有表都必须有别名(多表查询 / 删除时未给表指定别名) |
1264 | 数值超出字段范围(数值类型字段存储超上限 / 下限) |
1265 | 数据截断(插入的数值 / 字符串超出字段定义长度或格式不匹配) |
1267 | 字符集排序规则不匹配 |
1292 | 列数据类型不兼容,sql_mode 严格模式 |
1300 ~ 1399:数据格式 / 值相关错误 | |
1305 | 引用了一个不存在的对象(表、字段、存储过程、函数、触发器等) |
1364 | 字段有默认值约束,但未设置默认值(或默认值表达式无效), 一般是 sql_mode 严格模式触发 |
1366 | 字符串编码不兼容(字段字符集不支持插入的字符) |
其他错误码 | |
1406 | 字符串长度超出字段限制(字段存储不下插入的字符串) |
1525 | 时间字段格式问题(sql_mode 问题或者 MySQL 版本问题) |
3024 | SQL 执行时间超时,一般设置了 /+ MAX_EXECUTION_TIME(100) / HINT |
3065 | 使用 DISTINCT 去重时,ORDER BY 引用的列未包含在 SELECT 列表中(MySQL 严格模式下不允许) |
3141 | JSON 格式错误(插入 / 更新的 JSON 数据格式无效) |
8501 | 连接 / 驱动错误 |
文档反馈