close

學過JAVA的人都知道 沒有 JDBC Driver 是很難收服 MSSQL 的! 什麼是JDBC 呢? 根據微軟的說法:

Microsoft 一直持續不斷地致力於互通性,已發行新的「Java 資料庫連接」(Java Database Connectivity,JDBC) 驅動程式。 提供 SQL Server 驅動程式下載項目給所有 SQL Server 使用者使用,不另收費用,並可讓您從任何 Java 應用程式、應用程式伺服器或啟用 Java 功能的 Applet 存取 SQL Server 2008 R2、SQL Server 2008、SQL Server 2005 和 SQL Server 2000。下載 SQL Server JDBC 驅動程式 3.0 即表示您接受此元件之使用者授權合約 (EULA) 的條款與條件。

新的SQL Server JDBC 驅動程式 3.0 是 Type 4 JDBC 驅動程式,可以透過 Java Platform (Enterprise Edition 5) 和更新版本中提供的標準 JDBC 應用程式介面 (API) 來提供資料庫連接。 這個版本的 JDBC 驅動程式符合 JDBC 4.0 標準,並可在 Java Development Kit (JDK) 5.0 版或更新版本上執行。 已經針對主要的應用程式伺服器做過測試,包括 IBM WebSphere 及 SAP NetWeaver。 

所以第一步必需先找到JDBC Driver 才是!

 

Step 1.) 向微軟要JDBC Driver 

先到MSDN上看看這一篇是微軟提供的java或jsp連接微軟mssql教學 - 學習jsp或java的初學者可以作為一個很好的
參考:

http://msdn.microsoft.com/en-us/data/aa937724.aspx

這個網頁的部份畫面截圖如下:

ms1.JPG 

直接點選文章的中段的下載連結或前往下載網址

http://www.microsoft.com/downloads/details.aspx?FamilyID=a737000d-68d0-4531-b65d-da0f2a735707

就可以到下載頁面開始下載 SQL Server JDBC Driver 3.0啦. 這是一個可以用來連接MS SQL2008 的最新驅動程式!

 

Step 2.) 開始下載 JDBC Driver 

除了預設的英文版外, 還有其他版本可以選用, 當然包括我們熟用的繁中版。

根據微軟的文件說法 SQL Server JDBC Driver 3.0 這個版本的作業環境需求為:

 

  • 作業系統: Linux; Unix; Windows 7; Windows Server 2003; Windows Server 2008 R2; Windows Vista; Windows XP
  • JDBC 驅動程式設計為可以在支援使用 JAVA 虛擬機器 (JVM) 的任何作業系統上運作。 不過,僅在 Sun Solaris、SUSE Linux 及 Windows XP 或更新版本的作業系統上測試過。

  • Java Development Kit:5.0 或更新版本

  • SQL Server 2008 R2 或 SQL Server 2008 或 SQL Server 2005 或 SQL Server 2

 

Step 3.) 開始安裝 JDBC Driver 

個人目前工作於Windows XP 平台, 所以其他平台的使用方法請直接參閱微軟的說明:

http://www.microsoft.com/downloads/details.aspx?FamilyID=a737000d-68d0-4531-b65d-da0f2a735707&displayLang=zh-tw

其實這個Driver的安裝再簡單也不過, 在Windows 端要做的實際上只有解壓縮和設定環境變數二件事而已, 不過我們還是按照原作者的要求一步一步的做下來:

1.) 首先按照微軟的要求點選license_CHT.rtf 即使用者授權合約 (EULA) 並列印一份 EULA,作為記錄備查。 

2.) 將 sqljdbc_3.0.1301.101_cht.exe (繁中版) 或 sqljdbc_3.0.1301.101_enu.exe (英文版)下載至暫存目錄。 

3.) 執行上述程式。 

4.) 出現提示時,請輸入安裝目錄。 建議您將此 zip 檔案解壓縮到 Program Files 中的預設目錄下:"Microsoft SQL Server JDBC Driver 3.0"。 

5.) 解壓縮後,到C:\Program Files\ 
Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\emu(或cht)\help 目錄下開啟 default.htm,即可在網頁瀏覽器中看到完整的 JDBC 說明文件。 


6.) 充份了解系統之後, 請到C:\Program Files\ 
Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\emu(或cht) 下找到最重要的jar 檔. 這一個版本的jar 檔只有兩個, 選用其中一個即可但必需非常注意其區別.

  • sqljbdc4.jar : 內容為JDBC Type 4 的類別庫, 需要使用 Java Runtime Environment (JRE) 6.0 版或更新版本。在 JRE 1.4 或 5.0 上使用 sqljdbc4.jar 將會將會在連接至資料庫時發生例外狀況。要特別注意的是當您的應用程式必須在 JRE 6.0 上執行時,即使應用程式並未使用 JDBC 4.0 功能,還是必需使用 sqljdbc4.jar
  • sqljdbc.jar:  內容為JDBC Type 4 的類別庫, 需要使用 Java Runtime Environment (JRE) 5.0 或較舊的版本。 如果您在 JRE 6.0 上使用 sqljdbc.jar,將會在連接至資料庫時會發生例外狀況。

     舊版本的JDBC driver 則有三個jar 檔放在lib目錄內, 分別是:

  • msbase.jar:  內容為 Microsoft SQL Server 2000 driver for JDBC and DataSource classes
  • mssqlserver.jar:  內容為 SQL Server driver 的 Class
  • msutil.jar:  內容為 SQL Server driver 的 Class

 7.) 選定正確的jar檔後, 必需把它的路徑加入CLASSPATH 環境變數內否則有可能在程式執行時會出現「找不到類別」的一般例外狀況。以下是用於 Windows 應用程式的 CLASSPATH 陳述式範例:

CLASSPATH =.;C:\Program Files\Microsoft SQL Server JDBC Driver\sqljdbc_3.0\enu\sqljdbc.jar

請注意sqljdbc.jar 或 sqljdbc4.jar只能把其中一個設定到CLASSPATH上喔!

8.) 接下來就是JAVA 程式內的設定三部曲了!

  • 註冊JDBC驅動程式:Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

  • 建立驅動程式與應用程式的連接通道: 註冊JDBC之後,就可以使用 DriverManager 類別的 getConnection 方法來建立連接。通常是建立一個url 的字串後再叫用connection 物件的方法來完成, 範例如下: 
     
      String connectionUrl ="jdbc:sqlserver://localhost\\SQLEXPRESS;database=中文北風;user=sa;password=1234";

    Connection con = DriverManager.getConnection(connectionUrl);
  • 組建並送出 SQL statement, 並以ResultSet類別的物件接收SQL 指令執行的結果
  • 請注意: 在 JDBC API 4.0 中,DriverManager.getConnection 方法已強化成可自動載入 JDBC 驅動程式。 因此,使用 sqljdbc4.jar 類別庫時,應用程式不需要呼叫 Class.forName 方法來註冊或載入此驅動程式。

    7.) 完成啦!

     

     

     

     

     

     


     

    全站熱搜
    創作者介紹
    創作者 China Camel 的頭像
    China Camel

    工業IT老鬼的宅

    China Camel 發表在 痞客邦 留言(2) 人氣()