天天看點

Java 連接配接各種資料庫SQLite - Javajava連接配接MYSQLJava連接配接Oracle

SQLite - Java

在 Java 程式中使用 SQLite 之前,我們需要確定機器上已經有 SQLite JDBC Driver 驅動程式和 Java。

從 sqlite-jdbc 庫下載下傳 sqlite-jdbc-(VERSION).jar 的最新版本。

https://bitbucket.org/xerial/sqlite-jdbc/downloads

在您的 class 路徑中添加下載下傳的 jar 檔案 sqlite-jdbc-(VERSION).jar,或者在 -classpath 選項中使用它。

連接配接資料庫

下面的 Java 程式顯示了如何連接配接到一個現有的資料庫。如果資料庫不存在,那麼它就會被建立,最後将傳回一個資料庫對象。

import java.sql.*;

public class SQLiteJDBC

{

  public static void main( String args[] )

  {

    Connection c = null;

    try {

      Class.forName("org.sqlite.JDBC");

      c = DriverManager.getConnection("jdbc:sqlite:test.db");

    } catch ( Exception e ) {

      System.err.println( e.getClass().getName() + ": " + e.getMessage() );

      System.exit(0);

    }

    System.out.println("Opened database successfully");

  }

}

========

java連接配接MYSQL

首先要安裝有JDK。然後安裝MySQL。

配置好這兩個環境後,下載下傳JDBC驅動mysql-connector-java-5.0.5.zip。然後将其解壓縮到任一目錄。

然後将其目錄下的mysql-connector-java-5.0.5-bin.jar加到classpath裡,具體如下:“我的電腦”-> “屬性” ->  “進階” ->  “環境變量”,在系統變量那裡編輯classpath,将D:\mysql-connector-java-5.0.5\mysql-connector-java-5.0.5-bin.jar加到最後,

在加這個字元串前要加“;”,以與前一個classpath區分開。然後确定。

環境配置好了。現在,先配置MySQL,設其使用者名為“root”,密碼為“root”。在指令行或用一個SQL的前端軟體建立Database。

先建立資料庫:

CREATE DATABASE SCUTCS;

接着,建立表:

CREATE TABLE STUDENT

(

SNO CHAR(7) NOT NULL,

   SNAME VARCHAR(8) NOT NULL,

   SEX CHAR(2) NOT NULL,

   BDATE DATE NOT NULL,

   HEIGHT DEC(5,2) DEFAULT 000.00,

   PRIMARY KEY(SNO)

);

然後插入資料,可以用SQL語句insert into <表名> values  (value1, value2, ...);

也可以用SQLyog來操作

編寫.java檔案來示範如何通路MySQL資料庫。

import java.sql.*;

public class JDBCTest {

public static void main(String[] args){

           // 驅動程式名

           String driver = "com.mysql.jdbc.Driver";

           // URL指向要通路的資料庫名scutcs

           String url = "jdbc:mysql://127.0.0.1:3306/scutcs";

           // MySQL配置時的使用者名

           String user = "root"; 

           // MySQL配置時的密碼

           String password = "root";

           try { 

            // 加載驅動程式

            Class.forName(driver);

            // 連續資料庫

            Connection conn = DriverManager.getConnection(url, user, password);

            if(!conn.isClosed()) 

             System.out.println("Succeeded connecting to the Database!");

            // statement用來執行SQL語句

            Statement statement = conn.createStatement();

            // 要執行的SQL語句

            String sql = "select * from student";

            // 結果集

            ResultSet rs = statement.executeQuery(sql);

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

            System.out.println("執行結果:");

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

            System.out.println(" 學号" + "\t" + " 姓名");

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

            String name = null;

            while(rs.next()) {

             // 選擇sname這列資料

             name = rs.getString("sname");

             // 首先使用ISO-8859-1字元集将name解碼為位元組序列并将結果存儲新的位元組數組中。

             // 然後使用GB2312字元集解碼指定的位元組數組

             name = new String(name.getBytes("ISO-8859-1"),"GB2312");

             // 輸出結果

             System.out.println(rs.getString("sno") + "\t" + name);

            }

            rs.close();

            conn.close();

           } catch(ClassNotFoundException e) {

            System.out.println("Sorry,can`t find the Driver!"); 

            e.printStackTrace();

           } catch(SQLException e) {

            e.printStackTrace();

           } catch(Exception e) {

            e.printStackTrace();

           } 

}

接下來我們運作一下看下效果:

D:\testjdbc>javac JDBCTest.java

D:\testjdbc>java JDBCTest

Succeeded connecting to the Database!

......

========

Java連接配接Oracle

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.ResultSet;

import java.sql.Statement;

public class DB {

    private static Connection con = null;

    private static Statement sql = null;

    private static ResultSet rs = null;

    public static void main(String[] args) throws SQLException {

       int no;

       String dep;

       String sal;

       try {

           con = dbConn("snpw1", "welcome1");

           if (con == null) {

              System.out.print("連接配接失敗");

              System.exit(0);

           }

           sql = con.createStatement();

           rs = sql.executeQuery("select empid, deptid, salary from oracle_employee");

           System.out.println("工号" + "            " + "部門号" + "             "+ "薪水");

           while (rs.next()) {

              no = rs.getInt(1);

              dep = rs.getString(2);

              sal = rs.getString(3);

              System.out.println(no + "         " + dep + "         " + sal);

           }

       } catch (Exception e) {

           e.printStackTrace();

       } finally {

           con.close();

       }

    }

    public static Connection dbConn(String name, String pass) {

        Connection c = null;

        try {

            Class.forName("oracle.jdbc.driver.OracleDriver");

        } catch (ClassNotFoundException e) {

            e.printStackTrace();

        }

        try {

            c = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", name, pass);

        } catch (SQLException e) {

            e.printStackTrace();

        }

        return c;

     }

}

注意:要導入JDBC驅動,滑鼠右鍵JRE System Libray->Build Path->Configure Build Path->Add External JARs,然後選擇要導入的JDBC驅動包就可以了。