遍歷JDBC結果集


遍歷結果集:

 

 

 

案例5:JDBC如何獲取查詢返回結果集:

package com.java.JDBC;


import java.sql.*;


public class JDBCTest05 {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        
        try {
            // 1 注冊驅動
            Class.forName("com.mysql.jdbc.Driver");
            // 2 獲取連接
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase","root","333");
            // 3 獲取數據庫操作對象
            stmt = conn.createStatement();
            // 4 執行sql語句
            String sql = "select empno as a,ename,sal from emp";
            // int executeQuery(select);
            // ResultSet executeUpdate(insert/update/delete);
            rs = stmt.executeQuery(sql);// 專門執行DQL語句的方法
            // 5 處理查詢結果集
            /*boolean flag = rs.next();
            // System.out.println(flag);// true
            
            if(flag){
                // 光標指向的行有數據
                // 取數據
                // getString()方法的特點是:不管數據庫中的數據類型是什么,都以String的形式取出。
                // 以下程序中的 1 2 3 說的是第幾列
                String empno = rs.getString(1);// JDBC中所有下標從1開始。不是從0開始
                String ename = rs.getString(2);
                String sal = rs.getString(3);
                System.out.println(empno + " " + ename + " " + sal);
            }*/
            
            while (rs.next()){
                /*String empno = rs.getString(1);
                String ename = rs.getString(2);
                String sal = rs.getString(3);*/
                
                /*// 這個不是以列的下標獲取
                String empno = rs.getString("a");// 重點注意:列名稱不是表中的列名稱,是查詢結果的列名稱
                String ename = rs.getString("ename");
                String sal = rs.getString("sal");
                System.out.println(empno + " " + ename + " " + sal);*/
    
                int empno = rs.getInt("a");// 重點注意:列名稱不是表中的列名稱,是查詢結果的列名稱
                String ename = rs.getString("ename");
                double sal = rs.getDouble("sal");
                System.out.println(empno + " " + ename + " " + sal + 100 );
                
            }
        } catch (Exception e){
            e.printStackTrace();
        } finally {
            // 6 釋放資源
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
            if (stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM