我正在尝试在我的 java 程序中通过 jdbc 对表进行查询。
我知道该表中有三行。
我得到了结果集,可以读取和处理第一行的数据。但是当我尝试将结果集移动到下一行时,就会出现异常。
the exception pointed [SQL0181]
我正在尝试在我的 java 程序中通过 jdbc 对表进行查询。
我知道该表中有三行。
我得到了结果集,可以读取和处理第一行的数据。但是当我尝试将结果集移动到下一行时,就会出现异常。
the exception pointed [SQL0181]
您可以使用SQL 消息查找器来查找消息代码。
SQL0181消息文本是:
日期、时间或时间戳字符串中的值无效。
这表明行中有一个值不能表示为 SQL日期时间值。
遗留 HLL 程序引入这些类型的错误并不少见,因为它们能够直接写入表行而无需 SQL 接口强制执行的相同验证。
另请参阅之前提出的 SO 问题:为什么我会收到“[SQL0802] 数据映射错误的数据转换”异常?
我知道这是一个老问题,但它是 SQL0181 的热门搜索结果,答案是错误的。
问题是正在检索的日期不能以正在使用的日期格式表示。IBM i 允许多种非 ISO 日期格式,它们无法处理时间的开始和结束之类的事情。该错误源于尝试使用其中之一。
您可以更改用户配置文件或在 JDBC 设置上使用 ISO。"jdbc:as400://RHASSLH;日期格式=iso;时间格式=iso;"
参考: http ://www-01.ibm.com/support/docview.wss?uid=nas8N1017268