代码插入数据库数据时报错:Cause: com.mysql.cj.jdbc.exceptions.MysqlDat ...

打印 上一主题 下一主题

主题 651|帖子 651|积分 1953

一、报错信息
### Error updating database.  Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'type' at row 18 ### The error may exist in file [C:\Users\Administrator\Desktop\DingTalk_yield_push\rdps\rdps-report\target\classes\mapper\report\StubfileMapper.xml] ### The error may involve com.rdps.report.mapper.StubfileMapper.batchInsert-Inline ### The error occurred while setting parameters
二、原因分析
从日志可以看到关键字:Data too long for column ‘source_table’,意思就是插入的数据超出了建表时的最大长度,使用 navicat 打开表设计,修改表中字段最大长度时又发现报错为:

因为使用的数据库为 MySQL,表的引擎是 InnoDB 表范例,会出现锁等待的环境,在出现锁等待时,会根据参数 innodb_lock_wait_timeout(默认50s)的配置,判定是否需要举行 timeout 的操作,如果等待时间超过了设置的时间就会报错。此时才想到自己代码还处于debug状态,因此造成了锁等待环境,接着停止代码运行后就可以修改表中字段长度了~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

半亩花草

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表