ResultSet rs = stmt.executeQuery(sql);

当让stmt来返回一个结果集的时候,前面一个ResultSet会自动关闭。

即在执行stmt.executeQuery的时候,会自动关闭上一次stmt.executeQuery的结果集。

所以,我们用:

ResultSet rs = stmt.executeQuery(sql);

while(){……}

rs2 = stmt.executeQuery(sql2);

while(){……}

rs3 =  stmt.executeQuery(sql3);

while(){……}

是没有问题的,因为我们在用下一个结果集的时候,没再去前一个中拿数据。

但是,在有嵌套的时候:

while (rs.next()) {
String sql2 = "select * from role_areamap";
rs2 = stmt.executeQuery(sql2);
while (rs2.next()) {
System.out.println(rs.getString(1));
}
System.out.println(rs.getInt(1));
}

就会报错了。

解决方法:1,再新建一个Statement   2.用Jdbc3.0的新特性:Statement.KEEP_CURRENT_RESULT

转载于:https://www.cnblogs.com/java0721/archive/2011/10/31/2602787.html

多个结果集ResultSet的问题相关推荐

  1. 结果集(ResultSet)用法

    结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等. 结果集读取数据 ...

  2. mysql resultset用法_结果集(ResultSet)用法

    结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等. 结果集读取数据 ...

  3. Java(CallableStatement)调用Oracle存储过程返回结果集(ResultSet)

     一:无返回值的存储过程调用 存储过程: CREATE OR REPLACE PROCEDURE PRO_1(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS BEGIN ...

  4. 5、ResultSet结果集

    第一节:ResultSet 结果集的引入 当我们查询数据库时,返回的是一个二维的结果集,我们这时候需要使用 ResultSet 来遍历结果集,获取每一行的数据. 第二节:使用 ResultSet 遍历 ...

  5. java调用sql返回list_Spring JdbcTemplate实现有java.sql.ResultSet结果集返回的存储过程调用 | 学步园...

    一.调用存储过程 方式一: /** * 方法功能说明:通过存储过程分页,获取分页信息以及查询记录(装在list中): * List.get(0)= hsTable; //存放分页信息(tableNam ...

  6. Java中将ResultSet结果集转换为List

    方法1]借助bean的办法 //rs是一个查询语句所返回的结果集 ResultSet rs=new ResultSet(); rs=pstmt.executeQuery(); //将rs逐条取出,并将 ...

  7. MySQL拦截器获取xml id_关于mybatis拦截器,有谁知道怎么对结果集进行拦截,将指定字段查询结果进行格式化...

    用MyBatis结果集拦截器做过这样一个需求: 由于项目需求经常变动,项目MySQL数据库都是存放JSON字符串,例如:用户的基本信息随着版本升级可能会有变动 数据表 CREATE TABLE `ac ...

  8. ResultSet用法集锦 (转)

    转:http://soft-development.iteye.com/blog/1420323 结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是 ...

  9. java跨库join方案_集算器协助java处理多样性数据源之跨库关联

    Java的数据计算类库RowSet提供了JoinRowSet和FilteredRowSet类,可以进行跨库的关联计算,但是有很多局限.首先,JoinRowSet只支持inner join,不支持out ...

最新文章

  1. canvas绘制弯月
  2. 通过WebRTC实现实时视频通信(三)
  3. 图片保存路径更改 python
  4. sqlerver mysql_转 MYSQL学习(一)
  5. 《图解CSS3:核心技术与案例实战》——1.3节渐进增强
  6. 在DOS下修改本机IP地址
  7. JAVA程序错误总结
  8. 地理大数据下载网址推荐
  9. TiDB EcoSystem Tools 原理解读(一):TiDB-Binlog 架构演进与实现原理
  10. ipcs中的dest是什么意思
  11. 1124 Raffle for Weibo Followers(map)
  12. Mapbox加载天地图CGCS2000矢量瓦片地图服务
  13. Windows XP常见进程列表
  14. 这6个编程语言排行榜,据说全都知道的人不足1% | 年终榜单大盘点
  15. 深入理解Pytorch负对数似然函数(torch.nn.NLLLoss)和交叉熵损失函数(torch.nn.CrossEntropyLoss)
  16. mtk preloader
  17. Vue项目中实现sm4 CBC、ECB加密传输
  18. 常用于教学的计算机软件,常用计算机软件对化学教与学的重要性
  19. [20120919] 关于紫光输入法.txt
  20. Ci2454/CI2451国产2.4GHz无线收发8位MCU玩具遥控SoC芯片

热门文章

  1. python就业方向哪个好-学习python就业方向都有哪些?
  2. python3.7.2下载-Python编程神器 v3.7.2 最新免费版
  3. python开发工具排名-Python程序员必备的四款开发工具
  4. esp32 python-ESP32及其开发板介绍
  5. python和vb的代码可以通用吗-VB6+Python混合编程(COM组件)(转)
  6. python使用教程cmd啥意思-Python 中的cmd模块学习
  7. python入门代码示例-总算知道python入门代码示例
  8. python的用途实例-python中类方法,实例方法,静态方法的作用和区别
  9. 用python爬虫的基本步骤-Python爬虫入门:爬虫基础了解
  10. python免费入门手册-Python 基础入门教程