当前位置: 技术问答>java相关
请问一个关于数据库的查询结果返回resultset的问题
来源: 互联网 发布时间:2015-02-26
本文导语: 问题是这样的 conn = DriverManager.getConnection(ConnStr,UserName,Password); stmt = conn.createStatement(); ResultSet rs1= stmt.executeQuery(sql1); 这样获得了一个结果集 当我再次调用: ResultSet rs2= stmt.executeQuery(sql2); 此时rs1的内容是不是已...
问题是这样的
conn = DriverManager.getConnection(ConnStr,UserName,Password);
stmt = conn.createStatement();
ResultSet rs1= stmt.executeQuery(sql1);
这样获得了一个结果集
当我再次调用:
ResultSet rs2= stmt.executeQuery(sql2);
此时rs1的内容是不是已经发生了改变,即自动close了!
那么我如何在不关掉一个结果集的同时得到另外的结果集呢?
难道一定要连接数据库2次?
定义2个stmt好像不行,请高人援手谢了!
conn = DriverManager.getConnection(ConnStr,UserName,Password);
stmt = conn.createStatement();
ResultSet rs1= stmt.executeQuery(sql1);
这样获得了一个结果集
当我再次调用:
ResultSet rs2= stmt.executeQuery(sql2);
此时rs1的内容是不是已经发生了改变,即自动close了!
那么我如何在不关掉一个结果集的同时得到另外的结果集呢?
难道一定要连接数据库2次?
定义2个stmt好像不行,请高人援手谢了!
|
我也遇到过这样的问题,
好像jsp不能在不关掉一个结果集的同时得到另外的结果集,
所以我要么就用javabean将结果集封装起来,
再用参数传给jsp,
要么就尽量将两次要查的结果用一次查询来实现,
因为两次查询肯定是相关的!
不过,或许别人会有办法,
要关注!!!
好像jsp不能在不关掉一个结果集的同时得到另外的结果集,
所以我要么就用javabean将结果集封装起来,
再用参数传给jsp,
要么就尽量将两次要查的结果用一次查询来实现,
因为两次查询肯定是相关的!
不过,或许别人会有办法,
要关注!!!
|
不如用 CacheRowset类。java.sun.com/jdbc/
|
试试对于不同的 查询 ,用 prepareStatement 生成几个PreparedStatement 出来。
用 executeQuery 方式不太好吧?
用 executeQuery 方式不太好吧?
|
可以使用多个Statement的,但每一个只能用于产生一个ResultSet。