1. 程式人生 > >Eclipse連線SQL Server,JDBC Driver

Eclipse連線SQL Server,JDBC Driver

JDBC Driver 可根據自身實際需要到官網下載對應的版本,下載完成後在Eclipse中新增即可。

SQL Server jdbc 驅動:右鍵單擊專案->Build Path->Configure Bulid Path->Add External JARs->sql_jdbc.jar

若出現version錯誤,則驅動與JDK版本不相容,需安裝更高版本的JDK;

若出現TCP/IP Connection錯誤:配置工具->SQL Server Configuration Manager->MssqlSERVER的協議,看看TCP/IP協議是否啟動,如果啟動,右鍵選單點"屬性" ,在分頁選單中選"IP地址",把"IP1"和"IP2"中"TCP埠"為1433,"已啟用"改為"是";

配置工具->SQL Server Configuration Manager->SQL Native Client 配置->客戶端協議->TCP/IP

選擇TCP/IP右鍵選單中"屬性",確認"預設埠"是1433,"已啟用"為"是"

在java專案中,只需要引入mysql-connector-java-5.1.7-bin.jar就可以執行java專案。

在web專案中,當Class.forName("om.mysql.jdbc.Driver");時myeclipse是不會去查詢字串,不會去查詢驅動的。所以只需要把mysql-connector-java-5.1.7-bin.jar拷貝到tomcat下lib目錄就可以了。


  • Driver介面:java.sql.Driver是所有JDBC驅動程式需要實現的介面,這個介面對應不同的資料庫。

  SQLserver的JDBC驅動的類名:"com.microsoft.sqlserver.jdbc.SQLServerDriver"

  Oracle的JDBC驅動的類名:"oracle.jdbc.driver.OracleDriver"

  MySQL的JDBC驅動的類名:"com.mysql.jdbc.Driver"

 

  • 載入與註冊JDBC驅動

  Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");該語句用於載入

  JDBC連線資料庫的URL表現形式通常分為三個部分:

  協議:在JDBC中唯一允許的協議只能為jdbc;

  子協議:子協議用於標識一個數據庫驅動程式;

  子名稱:具體看下面。

 

連線SQLserver: "jdbc:sqlserver://localhost:1433;DatabaseName=databasename"

連線Oracle: "jdbc:thin:@localhost:1521:databasename"

連線MySQL: "jdbc:mysql://localhost:3306/databasename",可簡寫為"jdbc:mysql:///databasename"

  • 執行SQL語句介面Statement物件,該物件的常用方法:

void close() 關閉釋放資源

ResultSet executeQuery(String sql):執行某條查詢語句並返回結果

int execulteUpdate(String sql):可以執行insert,undate或者delete語句

excute(String sql):用於向資料庫傳送任意sql語句

addBatch(String sql):把多條sql語句放到一個批處理中

excuteBatch():像資料庫傳送一批sql語句執行


5>簡單實現(Eclipse連線SQL Server):

import java.sql.*;

public class SQLServer_Connection {
	public static void main(String[] args) {
		String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
		String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Hospital";
		String userName = "sunyao";
		String userPwd = "123";
		Statement stmt = null;
		ResultSet rs = null;
		// 載入與SQLserver資料庫連線的驅動
		try{
			Class.forName(driverName);
			System.out.println("載入驅動成功!");
		}catch (Exception e) {
			e.printStackTrace();
			System.out.println("載入驅動失敗!");
		}
		try{
			// 與資料庫連線//不能採用Windows身份驗證方式
			Connection conn = DriverManager.getConnection(dbURL, userName, userPwd);
			System.out.println("連線資料庫成功!"); 
			String SQL = "SELECT * FROM Huser";
			stmt = conn.createStatement();
			rs = stmt.executeQuery(SQL);
			//輸出指定資料庫表中的相關資訊
			while (rs.next()) {
				System.out.println(rs.getString(1) + " " + rs.getString(2) + "\t" + rs.getString(3));
			}
		}catch (Exception e) {
			e.printStackTrace();
			System.out.print("SQL Server連線失敗!");
		}
	}
}