jdbc連接mysql和oracle數據庫-java


1、jdbc連接mysql數據庫

連接數據庫,把emp表中的,ename,sal取出來,打印到控制台。

步驟:

1、注冊驅動

2、獲取連接

3、獲取數據庫操作對象

4、執行數據庫語句

5、如果是查詢就處理結果集

以下代碼是連接mysql

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class JDBC_Mysql
{
    public static void main(String []args){
        //假設sal是從界面上獲得的數據
        double sal = 1500;

        Connection conn = null;
        Statement st = null;
        ResultSet rs = null;
        //1:注冊驅動
        try{
            /*
            java.sql.Driver driver = new com.mysql.jdbc.Driver();
            DriverManager.deregisterDriver(driver);
            */
            Class.forName("com.mysql.jdbc.Driver");
            //2:獲取連接
            String url = "jdbc:mysql://127.0.0.1:3306/test";
            String uname = "root";
            String pwd = "root";
            conn = DriverManager.getConnection(url,uname,pwd);
            //3:獲取數據庫操作對象
            st = conn.createStatement();
            //4:執行數據庫語句
            rs = st.executeQuery("select ename,sal from emp where sal > "+sal);
            //5:如果是查詢就處理結果集
            while(rs.next()){
                
                /*
                所有的數據類型都可以使用getString獲得值
                String name = rs.getString("ename");
                String salary = rs.getString("sal");

                可讀性差,擴展力差。
                String name = rs.getString(1);
                double salary = rs.getDouble(2);
                */
                String name = rs.getString("ename");
                double salary = rs.getDouble("sal");

                System.out.println("姓名:"+ name +"\t工資:" + salary);
            }


        }catch(Exception e){
            e.printStackTrace();
        }finally{
        
            //6:釋放資源 ,從小到大依次關閉
            if(rs != null){
                try{
                    rs.close();
                }catch(SQLException sqle){
                    sqle.printStackTrace();
                }
            }
            if(st != null){
                try{
                    st.close();
                }catch(SQLException sqle){
                    sqle.printStackTrace();
                }
            }
            if(conn != null){
                try{
                    conn.close();
                }catch(SQLException sqle){
                    sqle.printStackTrace();
                }
            }
        }
            
    }
}

 

2、jdbc連接oracle數據庫

原理同連接mysql一樣,只不過要把url鏈接地址改改,以及預處理sql的方式,對比代碼一目了然。

package javasimple;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Jdbc_Oracle {
    public static void main(String []args){
        //假設sal是從界面上獲得的數據
        double sal = 1500;
        Connection conn = null;
        PreparedStatement  st = null;
        ResultSet rs = null;
        //1:注冊驅動
        try{
            Class.forName("oracle.jdbc.driver.OracleDriver");
            //2:獲取連接
            String url = "jdbc:oracle:thin:@//127.0.0.1:1521/orcl";
            String uname = "root";
            String pwd = "root";
            conn = DriverManager.getConnection(url,uname,pwd);
            //3:獲取數據庫操作對象
            String sql = "select ename,sal from emp where sal > "+sal;
            st = conn.prepareStatement(sql);
            //4:執行數據庫語句
            rs = st.executeQuery();    
            //5:如果是查詢就處理結果集
            while(rs.next()){
                String name = rs.getString("ename");
                double salary = rs.getDouble("sal");
                System.out.println("姓名:"+ name +"\t工資:" + salary);
            }
        }catch(Exception e){
            e.printStackTrace();
        }finally{
        
            //6:釋放資源 ,從小到大依次關閉
            if(rs != null){
                try{
                    rs.close();
                }catch(SQLException sqle){
                    sqle.printStackTrace();
                }
            }
            if(st != null){
                try{
                    st.close();
                }catch(SQLException sqle){
                    sqle.printStackTrace();
                }
            }
            if(conn != null){
                try{
                    conn.close();
                }catch(SQLException sqle){
                    sqle.printStackTrace();
                }
            }
        }
    }
}

 

 


免責聲明!

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



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