3

我正在使用键从表中检索某些数据。我正在使用休眠查询来检索数据。

我能够检索特定键的数据。但对于其他一些键,我收到错误或异常。我得到的例外是

[1/17/13 14:07:41:819 IST] 0000004c LongType I **org.hibernate.type.NullableType nullSafeGet 无法从结果集中读取列值:BRAND1_23_2_;[jcc][t4][10120][10898][3.58.81] 无效操作:结果集已关闭。错误代码=-4470,SQLSTATE=null**
[1/17/13 14:07:41:822 IST] 0000004c JDBCException W org.hibernate.util.JDBCExceptionReporter logExceptions SQL 错误:-4470,SQLState:null
[1/17/13 14:07:41:823 IST] 0000004c JDBCException E org.hibernate.util.JDBCExceptionReporter logExceptions [jcc][t4][10120][10898][3.58.81] 无效操作:结果集已关闭. 错误代码=-4470,SQLSTATE=null
[1/17/13 14:07:41:826 IST] 0000004c DefaultLoadEv I org.hibernate.event.def.DefaultLoadEventListener onLoad 执行加载命令时出错
                                 org.hibernate.exception.GenericJDBCException:无法加载实体:[com.travelport.soa.gds.airline.brandfares.entity.FareCollection#490]
    在 org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:126)
    在 org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:114)
    在 org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
4

5 回答 5

3

您获取了一个实体,该实体在 Java 中表示为延迟加载的一对多关系,Collection并且您在关闭获取该对象的 Hibernate 会话后尝试迭代该集合。您必须急切地获取集合或扩大会话边界以包含您的迭代代码。

于 2013-01-17T09:12:03.760 回答
1

在数据源自定义属性中使用 kodo 设置resultSetHoldability1时

于 2013-04-05T03:14:30.560 回答
1

DB2 中 SQL 代码 -4470 的最终原因有很多。这是一个简短的列表:

  1. 程序错误(就像在这种情况下),在游标被完全读取之前关闭它。
  2. 已安装的 JDBC 驱动程序中的错误: https ://issues.jboss.org/browse/JBPAPP-2408
  3. 由于文档不正确导致驱动程序使用不当: http ://www-01.ibm.com/support/docview.wss?uid=swg1IV45140
  4. DB2 服务器中的错误: https ://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.5.0/com.ibm.db2.luw.admin.trb.doc/doc/c0020806.html
于 2015-07-23T20:54:13.367 回答
0

如果惰性/急切获取策略是一个问题,您可能想要使用@OneToMany(fetch=FetchType.EAGER)并阅读Hibernate One To Many Eager Not Pulling in all Data如何获取 @OneToMany 和 @ManyToMany 实体A Short Primer On Fetching Strategies

我建议发布一些关于如何获取数据库和受影响记录的片段。您可能想使用https://gist.github.com/

于 2013-01-18T11:16:05.240 回答
0

我得到相同错误的原因是因为我关闭了 db2 连接,然后尝试读取结果集。请强调在读取结果集时 db2 必须保持连接。

于 2014-05-22T18:54:33.820 回答