descuser$$+-------+-------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+-------+-------------+------+-----+---------+----------------+|id|int(11)|NO|PRI|NULL|auto_increment||n" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

jdbc 處理mysql procedure返回的多個結果集

系統 2327 0

1:測試數據庫表user

      mysql>
      
         desc user$$


      
      +-------+-------------+------+-----+---------+----------------+

| Field | Type        | Null | Key | Default | Extra          |

+-------+-------------+------+-----+---------+----------------+

| 
      
        id
      
          | 
      
        int
      
      (
      
        11
      
      )     | NO   | PRI | NULL    | auto_increment |

| name  | varchar(
      
        10
      
      ) | YES  |     | NULL    |                |

| age   | 
      
        int
      
      (
      
        11
      
      )     | YES  |     | NULL    |                |

+-------+-------------+------+-----+---------+----------------+


      
        3
      
       rows 
      
        in
      
       set (
      
        0.00
      
       sec)
    

?

2:存儲過程,返回id>n_id 的與id<n_id的兩個結果集

      
        delimiter $$


      
      
        create
      
      
        procedure
      
       p_get_user_list(
      
        in
      
       n_id 
      
        int
      
      
        )


      
      
        begin
      
      
        select
      
       id, name, age 
      
        from
      
      
        user
      
      
        where
      
       id 
      
        >
      
      
         n_id;

    
      
      
        select
      
       id, name, age 
      
        from
      
      
        user
      
      
        where
      
       id 
      
        <
      
      
         n_id;


      
      
        end
      
       $$
    

3:JDBC操作

      
        /*
      
      
        

 * To change this license header, choose License Headers in Project Properties.

 * To change this template file, choose Tools | Templates

 * and open the template in the editor.

 
      
      
        */
      
      
        package
      
      
         jdbctest;


      
      
        import
      
      
         java.sql.CallableStatement;


      
      
        import
      
      
         java.sql.Connection;


      
      
        import
      
      
         java.sql.DriverManager;


      
      
        import
      
      
         java.sql.ResultSet;


      
      
        import
      
      
         java.sql.SQLException;


      
      
        import
      
      
         java.util.logging.Level;


      
      
        import
      
      
         java.util.logging.Logger;




      
      
        /**
      
      
        

 *

 * 
      
      
        @author
      
      
         y

 
      
      
        */
      
      
        public
      
      
        class
      
      
         Jdbctest {



    
      
      
        /**
      
      
        

     * 
      
      
        @param
      
      
         args the command line arguments

     
      
      
        */
      
      
        public
      
      
        static
      
      
        void
      
      
         main(String[] args) {

        
      
      
        //
      
      
         TODO code application logic here
      
      
                funtest();

    }

    

    

    
      
      
        public
      
      
        static
      
      
        void
      
      
         funtest(){

        Connection conn 
      
      = 
      
        null
      
      
        ;

        CallableStatement calState 
      
      = 
      
        null
      
      
        ;

        ResultSet rs 
      
      = 
      
        null
      
      
        ;

        

        
      
      
        try
      
      
         {

            Class.forName(
      
      "com.mysql.jdbc.Driver"
      
        );

            conn 
      
      = (Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", ""
      
        );

            

            calState 
      
      = conn.prepareCall("{call p_get_user_list(?)}"
      
        );

            calState.setInt(
      
      1, 3
      
        );

            

            
      
      
        boolean
      
       oprFlag =
      
         calState.execute();

            
      
      
        //
      
      
        使用外循環來控制結果集的個數,內循環控制每個結果集的記錄
      
      
        while
      
      
        (oprFlag){

                rs 
      
      =
      
         calState.getResultSet();

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

                
      
      
        while
      
      
        (rs.next()){

                    System.out.println(
      
      "id:"+rs.getInt("id")+"\t"+

                                "name:"+rs.getString("name")+"\t"+

                                "age:" +rs.getInt("age"
      
        ));

                }

                oprFlag 
      
      =
      
         calState.getMoreResults();

            }

        }
      
      
        catch
      
       (ClassNotFoundException |
      
         SQLException ex) {

            Logger.getLogger(Jdbctest.
      
      
        class
      
      .getName()).log(Level.SEVERE, 
      
        null
      
      
        , ex);

        }
      
      
        finally
      
      
        {

            
      
      
        if
      
      (
      
        null
      
       !=
      
        rs ){

                
      
      
        try
      
      
         {

                    rs.close();

                } 
      
      
        catch
      
      
         (SQLException ex) {

                    Logger.getLogger(Jdbctest.
      
      
        class
      
      .getName()).log(Level.SEVERE, 
      
        null
      
      
        , ex);

                }

            }

            
      
      
        if
      
      (
      
        null
      
       !=
      
         calState){

                
      
      
        try
      
      
         {

                    calState.close();

                } 
      
      
        catch
      
      
         (SQLException ex) {

                    Logger.getLogger(Jdbctest.
      
      
        class
      
      .getName()).log(Level.SEVERE, 
      
        null
      
      
        , ex);

                }

            }

            
      
      
        if
      
      (
      
        null
      
       !=
      
         conn){

                
      
      
        try
      
      
         {

                    conn.close();

                } 
      
      
        catch
      
      
         (SQLException ex) {

                    Logger.getLogger(Jdbctest.
      
      
        class
      
      .getName()).log(Level.SEVERE, 
      
        null
      
      
        , ex);

                }

            }

        }

        

    }

    

}
      
    

4:測試結果

      
        run:


      
      =================


      
        id
      
      :
      
        4
      
          name:test2    age:
      
        30
      
      
        id
      
      :
      
        5
      
          name:test3    age:
      
        24
      
      

=================


      
        id
      
      :
      
        1
      
          name:里斯    age:
      
        25
      
      
        id
      
      :
      
        2
      
          name:王五    age:
      
        26
      
      
        

成功構建 (總時間: 
      
      
        0
      
       秒)
    

?

?

jdbc 處理mysql procedure返回的多個結果集


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 白河县| 安塞县| 长顺县| 乐陵市| 炎陵县| 巧家县| 宣威市| 沅江市| 海门市| 永新县| 新平| 小金县| 雅江县| 祁门县| 苗栗市| 汝阳县| 开江县| 前郭尔| 镇江市| 佛山市| 工布江达县| 菏泽市| 亚东县| 库尔勒市| 乌拉特中旗| 平顶山市| 平南县| 大埔县| 广元市| 郑州市| 鄂伦春自治旗| 航空| 志丹县| 巫溪县| 金溪县| 乌拉特前旗| 镇坪县| 京山县| 西丰县| 治县。| 东辽县|