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

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

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

    java范例

    java

    Result 游標控制

    1
                stmt = conn.createStatement(
                    ResultSet.TYPE_SCROLL_INSENSITIVE,
                    ResultSet.CONCUR_READ_ONLY );//注意必須有參數,否則r沒結果
                rs = stmt.executeQuery( "select * from student" );
                rs.last();
                int r = rs.getRow();

                System.out.println( "r=" + r );

    2
               rs = stmt.executeQuery( "select count(*) as sc from student" );
           while ( rs.next() ) {
                    System.out.println( rs.getInt("sc") );
                    System.out.println( rs.getString("sc") ); //都可以
               }

    3
              rs = stmt.executeQuery( "select * from student" );
                while ( rs.next() ) {
                    i++;
                }
                System.out.println( "i=" + i );

    ----------------------------------------------------------------------------------------------------
    conn.createStatement()參數介紹:


    第一個參數指定 ResultSet 的類型。其選項有:
        TYPE_FORWARD_ONLY:
        ResultSet指針只能向前移動;
        TYPE_SCROLL_INSENSITIVE:
        ResultSet指針可以前后移動,INSENSITIVE表示不及時更新,就是如果數據庫里的數據修改過,并不
    ResultSet中反映出來;
        TYPE_SCROLL_SENSITIVE:
        ResultSet指針可以前后移動,SENSITIVE表示及時跟蹤數據庫的更新,以便更改ResultSet中的數據。

        在實際開發中,我們可以利用這些參數來方便地移動指針,比如:可以得到ResultSet的記錄數
            Statement stmt = con.createStatement(
                ResultSet.TYPE_SCROLL_INSENSITIVE,
                ResultSet. CONCUR_READ_ONLY );
            ResultSet rs = stmt.executeQuery("SELECT id, name FROM TABLE1");
             rs.last();                          //移動到最后一行
             int rownum = rs.getRow(); //獲得當前行的行號,即記錄的條數
             rs.absolute(1);                 //將指針返回至第一條記錄


    接著來看看resultSetConcurrency參數的意義:
        CONCUR_READ_ONLY: 表示當前ResultSet對象只讀,不能更新;
        CONCUR_UPDATABLE:表示當前ResultSet可以更新。

        在實際開發中我們可以利用CONCUR_UPDATABLE參數來實時更新ResultSet中的數據,更新有兩種方式:
        第一種方式是更新當前數據行的數據,如:
             rs.absolute(5);                               // 移動rs指針至第5行數據
             rs.updateString("NAME", "daniel"); // 將該行name列的值更新為“daniel”
             rs.updateRow();    //更新數據源的數據
        第二種方式是插入一行數據,如:
             rs.moveToInsertRow();       // 將指針移動至插入行,插入行是ResultSet對象中的特殊行
             rs.updateString(1, 2);         // 更新插入行中第一列的值為2
             rs.updateInt(2, "daniel");     // 更新第二列中的值為daniel
             rs.insertRow();
             rs.moveToCurrentRow();     //將指針移動至插入之前的位置


    [備注]
    在默認情況下類型為 TYPE_FORWARD_ONLY, CONCUR_READ_ONLY 并發級別。

    其實這些參數名稱都對應一個整數值:
    TYPE_FORWARD_ONLY=1003
    TYPE_SCROLL_INSENSITIVE=1004
    TYPE_SCROLL_SENSITIVE=1005

    CONCUR_READ_ONLY=1007
    CONCUR_UPDATABLE=1008



    關于Interface ResultSet 更多方法,請參考http://java.sun.com/j2se/1.5/docs/api/java/sql/ResultSet.html

    posted on 2007-10-25 14:10 王波 閱讀(504) 評論(0)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 亚洲国产一区二区三区| 免费无码AV电影在线观看| 亚洲精品视频免费观看| 日韩色视频一区二区三区亚洲| 美女网站免费福利视频| 亚洲国产成人无码av在线播放| 亚洲精品在线免费观看| 亚洲人成影院午夜网站| 国产99视频精品免费观看7| 久久夜色精品国产噜噜亚洲a| 美女被免费视频网站a国产| 在线91精品亚洲网站精品成人| 国产精品免费视频播放器| 成人特级毛片69免费观看| 亚洲精品网站在线观看不卡无广告 | 亚洲午夜精品一区二区麻豆| 成年女人18级毛片毛片免费 | 黄色大片免费网站| 亚洲中文字幕成人在线| 成人免费777777被爆出| 亚洲精品人成电影网| 成人五级毛片免费播放| 无遮挡a级毛片免费看| 国产V亚洲V天堂无码| 亚洲一级免费毛片| 欧美色欧美亚洲另类二区| 久久久久一级精品亚洲国产成人综合AV区 | 亚洲中文字幕乱码熟女在线| 日本一道综合久久aⅴ免费| 香蕉国产在线观看免费| 久久香蕉国产线看观看亚洲片| 亚洲精品在线免费观看视频| 国产成人亚洲精品蜜芽影院| 亚洲中文字幕日产乱码高清app| 香港a毛片免费观看| 亚洲精品无码久久久久牙蜜区| 日韩精品亚洲专区在线观看| 麻豆精品成人免费国产片| 亚洲三级在线观看| 亚洲欭美日韩颜射在线二| 日韩国产免费一区二区三区|