java - DB2 JDBC PreparedStatement 执行错误“Decfloat 转换需要 JDK1.5 null”
问题描述
我正在尝试使用 JAVA JDBC 在 DB2 表上运行一个小的更新查询。当我使用准备好的语句绑定变量传递值时出现此错误。我要更新的列被声明为 DECIMAL(13,2)。请有人指导我如何解决这个问题。
DB2 版本 11.1
Java 版本 8
从 IBM 网站下载的最新 JDBC 驱动程序
Windows
String query="update ALLOC_SUM set stat_amt=? where cost_cntr=50";
PreparedStatement stmt = connection.prepareStatement(query);
BigDecimal bd=new BigDecimal("2.54");
stmt.setBigDecimal(1, bd);
stmt.executeUpdate();
异常堆栈跟踪
com.ibm.db2.jcc.am.SqlException: [jcc][t4][1037][11192][3.71.22] Exception occurred during Decimal floating point conversion. See attached Throwable for details. ERRORCODE=-4220, SQLSTATE=null
at com.ibm.db2.jcc.am.gd.a(gd.java:797)
at com.ibm.db2.jcc.am.gd.a(gd.java:66)
at com.ibm.db2.jcc.am.gd.a(gd.java:98)
at com.ibm.db2.jcc.t4.eb.b(eb.java:1903)
at com.ibm.db2.jcc.t4.hb.a(hb.java:1578)
at com.ibm.db2.jcc.t4.hb.a(hb.java:1362)
at com.ibm.db2.jcc.t4.hb.a(hb.java:1350)
at com.ibm.db2.jcc.t4.hb.a(hb.java:1276)
at com.ibm.db2.jcc.t4.hb.a(hb.java:876)
at com.ibm.db2.jcc.t4.hb.a(hb.java:221)
at com.ibm.db2.jcc.t4.wb.a(wb.java:177)
at com.ibm.db2.jcc.am.hp.a(hp.java:3417)
at com.ibm.db2.jcc.am.hp.a(hp.java:4253)
at com.ibm.db2.jcc.am.hp.b(hp.java:4062)
at com.ibm.db2.jcc.am.hp.jc(hp.java:792)
at com.ibm.db2.jcc.am.hp.executeUpdate(hp.java:770)
at net.abcbs.cost.batch.job.TestJobImpl.run(TestJobImpl.java:45)
at net.abcbs.cost.batch.deploy.BatchJobAdapter.execute(BatchJobAdapter.java:18)
at net.abcbs.cost.batch.deploy.UnitTestJobRunner.main(UnitTestJobRunner.java:11)
Caused by: com.ibm.db2.jcc.a.ConversionException: [jcc][converters][606][10995]Decfloat conversion requires JDK1.5 null
at com.ibm.db2.jcc.a.e.a(e.java:356)
at com.ibm.db2.jcc.a.e.b(e.java:217)
at com.ibm.db2.jcc.t4.eb.b(eb.java:1899)
... 15 more
Caused by: java.lang.NullPointerException
at com.ibm.db2.jcc.a.e.a(e.java:334)
... 17 more
解决方案
推荐阅读
- php - MySQL - 如何连接加载数据语句?
- while-loop - 从具有边界的最近点创建线网络
- xamarin.forms - XAMARIN FORM:如何将消息发送到特定数量的 watsapp
- ios - Swift-4:如何使用带有“Content-Type”的 URLSession 中的参数的 POST 请求获取数据:“application/x-www-form-urlencoded”
- php - 如何访问docker nginx上的其他目录
- laravel - Laravel Nova - BelongsToMany 关系的选择下拉列表中缺少标签
- ruby-on-rails - Rails 模型回调(创建/更新后)attribute_was not working
- javascript - 使用单个索引定位多维数组中的项目
- flutter - Flutter - 通过 HTTP Post 发送 Json
- javascript - 除以 0 时的 JavaScript 计算器