學過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
這個網頁的部份畫面截圖如下:
直接點選文章的中段的下載連結或前往下載網址
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 平台, 所以其他平台的使用方法請直接參閱微軟的說明:
其實這個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");
String connectionUrl ="jdbc:sqlserver://localhost\\SQLEXPRESS;database=中文北風;user=sa;password=1234";
Connection con = DriverManager.getConnection(connectionUrl);
請注意: 在 JDBC API 4.0 中,DriverManager.getConnection 方法已強化成可自動載入 JDBC 驅動程式。 因此,使用 sqljdbc4.jar 類別庫時,應用程式不需要呼叫 Class.forName 方法來註冊或載入此驅動程式。
7.) 完成啦!
留言列表