为了账号安全,请及时绑定邮箱和手机立即绑定

在 java (jdbc) 中使用相同的连接实例打开两个结果集的问题!

在 java (jdbc) 中使用相同的连接实例打开两个结果集的问题!

慕婉清6462132 2022-06-04 16:30:24
我最近遇到了关于使用 JDBC 的 java 结果集的问题。为了便于理解,我将用两个函数 A 和 B 举例说明,假设我们在函数 A 中创建了一个结果集,我们称之为 rs1,这个 rs1 将返回给我们从 a 借来的书组图书馆。因此,对于从 rs1 获取的每一本书,我们调用函数 B,该函数将定义另一个结果集 rs2(rs2 是使用相同的连接实例创建的)来确定借过该书的人。这里的问题是,当我们从 rs1 中提取第一本书并在 rs1.next() 返回 false 之后调用 B 时,它不会超过第一本书,但是当我没有在 B 中定义 rs2 时,它工作得很好。这是为什么?注意:rs1 和 rs2 使用相同的连接实例创建!
查看完整描述

1 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

您是否使用相同Statement的方法来执行两个查询?JDBC 只允许ResultSet为每个打开一个Statement,因此如果您Statement对内部查询使用相同的,那么它将关闭您用于外部查询的那个。Statement如果您使用单独的内部查询,您应该能够做您想做的事情。



查看完整回答
反对 回复 2022-06-04
  • 1 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号