Extracted SQL state class ‘22’ from value ‘22001’
问题描述
最近在完成一个项目时,需要实现在网页从excel导入数据,然后保存到数据库中.在测试阶段时发现运行没有任何问题,但是实际部署过程中发现,用户上传excel导入数据失败,日志如下:
Extracted SQL state class '22' from value '22001'
解决办法
搞清楚此异常的原因,需要查询sql的执行状态表:
这条异常的意思是说,要保存的数据超过了数据库中对该字段定义的最大长度,检查数据表的定义,修改不合适字段定义,问题解决
类代码22:数据异常
SQLSTATE 值 | 含义 |
---|---|
22001 | 字符数据,发生右截断;例如,更新或插入值对于列来说太长(字符串),或者日期时间值由于太小而不能赋给主机变量。 |
22002 | 检测到空值或缺少指示符参数;例如,不能将空值赋给主机变量,因为没有指定指示符变量。 |
22003 | 数字值超出范围。 |