gpt4 book ai didi

java - 如何使 DB2 的 JDBC SQLExceptions 更具描述性?

转载 作者:IT老高 更新时间:2023-10-28 13:55:58 25 4
gpt4 key购买 nike

如何使 DB2 JDBC 驱动程序抛出的 SQLExceptions 更具描述性?

目前我遇到了这种异常。使用这些神秘的 SQLCODE 和 SQLSTATE 数值很麻烦。有没有办法让 SQL 异常包含代码描述。

Caused by: com.ibm.db2.jcc.b.SqlException: DB2 SQL error: SQLCODE: -302, 
SQLSTATE: 22001, SQLERRMC: null
at com.ibm.db2.jcc.b.hh.c(hh.java:1662)
at com.ibm.db2.jcc.b.hh.a(hh.java:1238)
at com.ibm.db2.jcc.c.db.n(db.java:737)
....

例如SQLSTATE 22001 有这样的描述:

Character data, right truncation occurred; for example, an update or insert value is a string that is too long for the column, or a datetime value cannot be assigned to a host variable, because it is too small.

编辑:我也在使用 Spring 和 Hibernate 框架。

最佳答案

将 JDBC 驱动程序属性 retrieveMessagesFromServerOnGetMessage 设置为 true。示例连接网址:

jdbc:db2://host:50128/MYDB:retrieveMessagesFromServerOnGetMessage=true;

另见 DB2 11.1 Documentation

关于java - 如何使 DB2 的 JDBC SQLExceptions 更具描述性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1470731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com