Operation not allowed after ResultSet closed 意为:在结果集关闭不容许操做java
错误关键在于:一个stmt有多个rs进行操做sql
正确操做应该:从stmt获得的rs1,必须立刻操做此rs1后,才能去获得另外的rs2,再对rs2操做.不能互相交替使用; 或者 不用的rs,使用不一样的stmt数据库
错误的代码以下:
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from t1");
rst=stmt.executeQuery("select * from t2");
rs.last();//因为执行了rst=stmt.executeQuery(sql_a);rs就会被关闭掉!因此程序执行到此会提示ResultSet已经关闭。错误信息为:java.sql.SQLException:Operation not allowed after ResultSet closed
rst.last();
正确的代码:
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from t1");
rs.last();//对rs的操做应立刻操做,操做完后再从数据库获得rst,再对rst操做
rst=stmt.executeQuery("select * from t2");
rst.last();spa