Statement stmt = null;
ResultSet rs = null;
Statement stmt = conn.createStatement();
String A,B;rs = stmt.exeQuery(A);(简写)大家都知道rs用完后是需要关闭,我想问的是这个rs关闭是每用一次就关一次,还是说到最后
方法退出前关闭?因为 rs = stmt.exeQuery(A);后,不关闭rs,还可以rs = stmt.exeQuery(B);rs = stmt.exeQuery(C);等等,到最后方法退出前关闭rs.close();
这样的话只需要关闭一次rs,但是感觉上会存在隐患。 所以希望高手指教下到底怎么关闭好.

解决方案 »

  1.   

    用一次关一次,每一次query都会产生一个新的resultset,不然你关的是最后那个query产生的resultset
      

  2.   

    如果是这样的话,那
    rs = stmt.exeQuery(A);
    rs.close();下面这句话还能够用吗?
    rs = stmt.exeQuery(B);
      

  3.   

    最好用一次关一次。否则如果你不关闭,可以试验一下
    for(int i=0;i<1000;i++)
    {
       rs = ps.execute....;
    }到一定数量就会报 “打开的游标超过最大数量”的数据库错误。
    我的oracle的这个数量是300。不同的数据库、同一数据库的不同设置,可能数量不同。但最终估计都会咯屁。
      

  4.   


    SQL SERVER 对这个没有限制的