今天调试db2数据的存储时,jdbc使用addBatch方法时,抛出异常,异常信息如下:

[jcc][1091][10404][3.62.56] 数据转换无效:参数实例  对于所请求的转换无效。 ERRORCODE=-4461, SQLSTATE=42815

db2  显示  SQLSTATE 42815: 数据类型、长度、小数位、值或 CCSID 无效。

根据信息没有得出任何结论,还是没有看出问题,无奈,将每条记录单独执行插入,发现问题:

原因是因为db2数据库addBatch时对jdbc的setString(1,aif.getOKFileFindWeek()) 时, 因aifgetOKFileFindWeek()返回值是空串。

问题就出在这里,db2对addBatch处理,不能使用空串,调整为pres.setString(10, aif.getOKFileFindWeek()  ==  "" ? null : aif.getChildProjectName()); 则正常运行了。

排查问题如斯,很是无解,将此问题分享给大家共勉吧,希望遇到类似错误的兄弟姐妹不要在这里卡太久吧。

快过年了,祝大家新年快乐。

相关文章:

  • 2022-12-23
  • 2021-11-30
  • 2022-02-20
  • 2022-12-23
  • 2021-10-26
  • 2021-09-24
  • 2021-11-24
猜你喜欢
  • 2022-02-05
  • 2021-11-26
  • 2022-02-08
  • 2022-12-23
  • 2021-11-16
  • 2021-06-19
  • 2022-02-07
相关资源
相似解决方案