<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-71  評論-5  文章-0  trackbacks-0
    一個stmt多個rs進行操作.那么從stmt得到的rs1,必須馬上操作此rs1后,才能去得到另外的rs2,再對rs2操作.不能互相交替使用,會引起rs已經關閉錯誤——Operation not allowed after ResultSet closed.

    錯誤的代碼如下:
     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();


    一個stmt最好對應一個rs, 如果用一個時間內用一個stmt打開兩個rs同時操作,會出現這種情況.編寫這樣的代碼的操作原則是:
    所以解決此類問題:

      1.就多創建幾個stmt,一個stmt對應一個rs;

      2.若用一個stmt對應多個rs的話,那只能得到一個rs后就操作,處理完第一個rs后再處理其他的,如上"正確代碼".

     

    多個stmt對應各自的rs.
    stmt=conn.createStatement();
    stmt2=conn.createStatement();
     
    rs=stmt.executeQuery("select * from t1");
    rst=stmt2.executeQuery("select * from t2");
     
    rs.last();
    rst.last();

    原文URL : 
    http://www.cnblogs.com/haore147/p/3617767.html
    posted on 2015-10-13 14:58 藤本薔薇 閱讀(215) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲成a人片在线观看中文动漫| 亚洲精品专区在线观看| 亚洲国产高清人在线| 日本免费人成网ww555在线| 亚洲综合熟女久久久30p| 中文字幕av免费专区| 亚洲国产精品高清久久久| 国产精品xxxx国产喷水亚洲国产精品无码久久一区| 精品亚洲AV无码一区二区| 免费做爰猛烈吃奶摸视频在线观看 | 欧洲乱码伦视频免费国产| 国产在线19禁免费观看国产| 国产亚洲精品国产福利在线观看 | 啦啦啦高清视频在线观看免费 | a级片免费在线播放| 久久精品国产亚洲av水果派| 蜜臀AV免费一区二区三区| 亚洲三级在线免费观看| 日韩免费福利视频| 国产成人无码精品久久久久免费| 亚洲国产三级在线观看| 最好看的中文字幕2019免费| 亚洲第一成人在线| 啊灬啊灬别停啊灬用力啊免费看| 国产免费人成视频在线播放播| 亚洲AV无码乱码国产麻豆穿越| 成人免费视频69| 亚洲av日韩综合一区二区三区| 亚洲色偷拍区另类无码专区| 午夜网站在线观看免费完整高清观看 | 国产成人无码免费看视频软件| 亚洲大尺度无码无码专线一区| 在线观看无码AV网站永久免费 | 亚洲国产婷婷六月丁香| 18禁免费无码无遮挡不卡网站| 亚洲av日韩综合一区久热| 青青草原亚洲视频| AA免费观看的1000部电影| 深夜免费在线视频| 亚洲日韩中文字幕| 亚洲人妻av伦理|