当前位置:   article > 正文

代码插入数据库数据时报错:Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long_error updating database. cause: com.mysql.cj.jdbc.

error updating database. cause: com.mysql.cj.jdbc.exceptions.mysqldatatrunca

一、报错信息

### 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状态,因此造成了锁等待情况,接着停止代码运行后就可以修改表中字段长度了~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/729250
推荐阅读
相关标签
  

闽ICP备14008679号