IBM公司的DB2數據庫應用非常廣泛,本文將為您介紹DB2數據庫的驅動類型說明,對於特定的DB2版本的驅動有特定的驅動,也有通用的驅動。如果您對此方面感興趣,不妨一看。
IBM公司的數據庫產品線中不同版本所提供的相關數據訪問API,其可以說是已經很多了,其中包括最早期的基於CLI的驅動,最近的純Java的驅動,以及CLI和Java的組合。
對於特定的DB2版本的驅動有特定的驅動也有通用的驅動,這是很明顯的.
一般說明
IBM公司的數據庫產品線中不同版本提供的數據訪問API可以說是很多了,其中包括早期的基於CLI的驅動,最近的純Java的驅動,以及CLI和 Java的組合.對於特定的DB2版本的驅動有特定的驅動也有通用的驅動,這是很明顯的.但是諸多版本的數據庫系統和諸多版本的訪問驅動,放在客戶面前,它們之間的關系顯得有些紛繁.
所以在使用IBM的數據庫產品時,頭腦中一定要注意版本對應和選擇適當的通用驅動.還好,IBM已經開始走向統一了,也開始注意易用性了,這些努力從DB2 UDB V7就開始了.從那時開始,按照Java領域JDBC驅動的類型劃分,IBM有了三類驅動了.
DB2的JDBC TYPE 2 驅動使 Java 應用程序通過JDBC調用DB2驅動類型.對 DB2 JDBC type 2 driver 的調用被轉換成 Java 本地方法.Java 使用這種驅動程序的應用程序必須運行在一個 DB2 客戶機上。
JDBC 請求通過這個客戶機轉到 DB2 服務器.在使用 DB2 JDBC 應用程序驅動程序訪問 DB2 UDB for iSeries 數據源或者 DB2 for OS/390 或 z/OS 環境中的數據源之前,必須安裝 DB2 Connect Version 8.DB2 JDBC type 2 driver 支持 JDBC 1.2 規范中描述的大部分 JDBC 和 SQLJ 函數,並且支持 JDBC 2.0 規范中描述的一些函數.
DB2的JDBC TYPE 3 驅動,也被稱為applet 或net driver,它由一個JDBC 客戶機和一個JDBC 服務器(該進程的名字是db2jd)組成.既可以在Applet中使用也可以在應用程序中使用.
DB2的JDBC TYPE 4 驅動被稱為通用驅動,是純Java實現的,該驅動也支持SQLJ.
目前IBM一直都沒有提供 TYPE 1的JDBC驅動程序.
這些類型驅動程序所在的包是:db2驅動類型jcc.jar 和 sqlj.zip 文件,sqllibbindb2jcct2.dll(該文件是 TYPE2所必需的).
使用
在使用 JDBC 連接 DB2 UDB V7.2 和 DB2 UDB V8.1 時,如果碰到一些令人費解的問題,可以檢查一下開發環境使用的JDK,在IBM提供的已知JDK中切換(目前有1.3和1.4版本),往往就能解決你的問題。
DB2 UDB V8.2個人版本中,下面的測試代碼測試了三種連接方式,並給出了結果:
import java.sql.*; public class Employee { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Employee ee = new Employee(); try { ee.testJcc(); 成功
ee.testNet(); 成功
ee.testApp(); 失敗,原因是:類型2需要安裝DB2驅動類型訪問客戶端,測試沒有安裝.如果要通過類型2訪問遠程數據庫,可以把遠程數據庫編目到本地後即可.
} catch (Exception e) { e.printStackTrace(); } } /**