<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 100  文章 - 50  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    我收藏的一些文章!

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    //驅動的問題
        Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
    Connection con = DriverManager.getConnection("jdbc:db2://133.64.37.1:50000/CHURNDB", "test", "test");


    DB2有幾種jdbc驅動,jdbc-url分別如下:
    jdbc:db2:localhost:db2test                              COM.ibm.db2.jdbc.net.DB2Driver         type3  db2java.zip
    jdbc:db2:db2test                                                COM.ibm.db2.jdbc.app.DB2Driver        type2  db2java.zip
    jdbc:db2://localhost:50000/db2test               com.ibm.db2.jcc.DB2Driver                     type4 db2jcc.jar

    另外用type4時 數據庫必須將codeset設置成utf-8
    否則查詢時會拋出com.ibm.db2.jcc.b.DisconnectException: encoding not supported!!異常

    今天犯了錯誤,弄混了寫法,希望沒人再犯同樣的錯。
    我的版本是 udb8.1。



    ----------------------------------------------------------------------

    /**了解基礎情況**/
    對于Java程序員而言,DB2 提供了兩種應用程序編程接口(API):JDBC 和 SQLJ。

    JDBC:
      JDBC 驅動程序分為舊的/CLI 驅動程序<db2java.zip>和新的通用 JDBC 驅動程序(Universal JDBC Driver)<db2jcc.jar>。
      JDBC 是一個與供應商無關的動態 SQL 接口,該接口通過標準化的 Java 方法向您的應用程序提供數據訪問。
      JDBC 類似于 DB2 CLI,因為您無須預編譯應用程序代碼,也無須將軟件包綁定到 DB2 數據庫。
      作為一個與供應商無關的標準,JDBC 應用程序提供了更多的可移植性—這是當今異構業務基礎設施所必需的優點。
      在執行 JDBC 應用程序期間,驅動程序將針對當前連接的 DB2 數據庫服務器驗證 SQL 語句。
      訪問期間的任何問題都會作為 Java 異常與相應的 SQLSTATE 和 SQLCODE 一起報告給應用程序。
    SQLJ:
      SQLJ 是一個用于從 Java 應用程序進行數據訪問的標準開發模型。
      SQLJ API 是在 SQL 1999 規范中定義的。
     
    新的通用 JDBC 驅動程序在一個實現中同時為 JDBC 和 SQLJ API 提供了支持。
    JDBC 和 SQLJ 可以在同一個應用程序中互操作。
    SQLJ 提供了獨特的使用靜態 SQL 語句進行開發以及在 DB2 包級別控制訪問的能力。

    /**JDBC連接方式分析**/
    JDBC 驅動程序體系結構分為四種類型:Type1,Type2,Type3,Type4。

    Type1:
      驅動程序基于 JDBC-ODBC 橋。
      因此 ODBC 驅動程序可以與此類 JDBC 驅動程序(由 Sun 提供)結合起來使用。
      IBM 不支持 Type 1 驅動程序,因此它不是推薦的環境。


    Type2:
       驅動程序依靠特定于操作系統的庫(共享庫)來與 RDBMS 通信。
       應用程序將裝入這種 JDBC 驅動程序,而驅動程序將使用共享庫來與 DB2 服務器通信。
       DB2 UDB for Linux, UNIX和 WindowsV8.1 提供了兩種不同的 Type 2 驅動程序:
       <1> 舊的/CLI JDBC 驅動程序在文件db2java.zip中提供。
         其實現包名稱為COM.ibm.db2.jdbc.app.DB2Driver。
         該驅動程序目前已被用于進行 J2EE 認證。
         其別名“app 驅動程序”源自于一種觀念及其包名稱,
         這種觀念就是:此驅動程序將通過遠程數據庫的本地 DB2 UDB 客戶機執行本地連接。
       <2> 通用 JDBC 驅動程序在文件db2jcc.jar中提供。
         其實現包名稱為com.ibm.db2.jcc.DB2Driver。
         此驅動程序是 DB2 UDB for Linux, UNIX 和 Windows V8.1 中的新功能。
         在最初的實現(V8.1)中,此驅動程序用于使用 Type 4 驅動程序體系結構與 DB2 服務器進行直接的 Java 連接。
         在 DB2 V8.1.2 中,您可以在 Type 2 體系結構中使用此驅動程序。
         在 Type 2 體系結構中使用此驅動程序的一個主要原因是為了本地應用程序性能和分布式事務支持。
         通用 JDBC Type 2 驅動程序分別使用com.ibm.db2.jcc.DB2XADataSource和com.ibm.db2.jcc.DB2ConnectionPoolDataSource來支持分布式事務和連接池。

      注:在將來的版本中不會對舊的/CLI Type 2 驅動程序進行增強。


    Type3:
       驅動程序是一種純 Java 實現,它必須與 DB2 JDBC Applet 服務器(DB2 JDBC Applet Server)通信才能訪問 DB2 數據。
       此類驅動程序旨在使 Java applet 能訪問 DB2 數據源。
       常被稱作“網絡(net)驅動程序”,它是根據其包名COM.ibm.db2.jdbc.net命名的。DB2 V8.1 支持網絡驅動程序,可以將其用于 JDBC 應用程序。
       要求db2java.zip驅動程序總是處于與 DB2 Applet 服務器相同的維護級別。
       如果驅動程序在 applet 內使用,這就不是一個問題,因為瀏覽器會在應用程序執行期間下載相應的db2java.zip文件。
       許多客戶使用 Type3 驅動程序而不是 Type2 驅動程序,以避免必需的 DB2 客戶機安裝和必需的DB2 CATALOG DATABASE命令,后者用于創建使用舊的/CLI 驅動程序進行 Type 2 連接所必需的數據庫目錄信息。
       目前,WebSphere Application Server 和其它 J2EE 服務器不支持 IBM Type 3 驅動程序,因為該驅動程序不支持分布式事務(JTA)。
       將來的版本不會對 Type 3 驅動程序進行增強。

       鼓勵使用通用 JDBC Type 4 驅動程序來替代 Type 3 驅動程序。


    Type4:
      驅動程序是僅用于 Java 的 JDBC 驅動程序,它直接連接到數據庫服務器。
      DB2 UDB for Linux, UNIX 和 Windows V8.1 引入了稱為“通用 JDBC 驅動程序(Universal JDBC driver)”的 Type 4 驅動程序。
      通用 JDBC 驅動程序在文件db2jcc.jar中提供。
      其實現包名為com.ibm.db2.jcc.DB2Driver。
      請注意,通用 Type 2 和通用 Type 4 驅動程序具有相同的實現類名稱。
      有兩種方法可以區別 DB2 在內部將實例化哪個驅動程序:
      使用連接特性來確定連接是否使用共享庫(Type2),或者驅動程序是否會啟動來自 Java 應用程序的直接連接(Type4)。


    重要:就 DB2 UDB V8.1.2 而言,通用 JDBC 驅動程序要求 CLASSPATH 中有許可證 JAR 文件和db2jcc.jar文件。
    以下是所需的許可證 JAR 文件:
      Cloudscape Network Server V5.1:db2jcc_license_c.jar
      DB2 UDB V8 for Linux, UNIX 和 Windows 服務器:db2jcc_license_su.jar
      DB2 UDB for iSeries and z/OS 服務器(與 DB2 Connect 和 DB2 Enterprise Server Edition 一起提供):db2jcc_license_cisuz.jar



    驅動程序類型:db2java.zip, db2jcc.jar
    注意:假如你使用db2java.zip,且web服務器使用Tomcat的話,請將db2java.zip改名為db2java.jar,最好將zip解壓再用jar命令打包,直接改文件類型也行(呵呵,按照jar文件嚴格意義上來講這是不符合文法的<少了描述性文件:MANIFEST.MF>,能用就行)
       還有一般情況下:就是使用 db2java.zip的話需要安裝db2客戶端, 使用db2jcc.jar是通過網絡直接來連接的無需安裝db2客戶端(假如用在type2上還是要裝客戶端的)

    type2:
    使用<db2java.zip>:
      jdbc.driverClassName=COM.ibm.db2.jdbc.app.DB2Driver
        jdbc.url=jdbc:db2:dataBaseName
       

       假如你的工具使用的是myeclipse且使用的是tomcat plugin的話,請將db2jdbc.dll 拷貝到 %JAVA_HOME%/bin下,否則不行地啦
       <是不是其他類型的使用db2java.zip驅動也有這個問題呢,不知道,沒試過,有空試一下>
      
      使用<db2jcc.jar>:
       jdbc.driverClassName=com.ibm.db2.jcc.DB2Driver
       jdbc.url=jdbc:db2:dataBaseName
     
    type3:
    驅動:db2java.zip
    jdbc.driverClassName=COM.ibm.db2.jdbc.net.DB2Driver
      jdbc.url=jdbc:db2://ip:6789/DBNAME
      注意:要在數據庫上執行 db2jstrt 6789 (這句啟動了db2jd進程,6789是默認的服務器偵聽jdbc2連接的端口,也可以設置成另外的任意不沖突的端口。)
     
    type4:
    驅動:db2jcc.jar
    數據庫字符集必須設置為utf-8
      jdbc.driverClassName=com.ibm.db2.jcc.DB2Driver
      jdbc.url=jdbc:db2://ip:port/DBNAME
    posted on 2010-11-22 13:30 fly 閱讀(934) 評論(0)  編輯  收藏 所屬分類: 數據庫學習
    主站蜘蛛池模板: 精品亚洲AV无码一区二区三区 | 国内一级一级毛片a免费| 亚洲国产精品特色大片观看完整版| 狠狠综合亚洲综合亚洲色| 国产美女无遮挡免费网站| 蜜芽亚洲av无码一区二区三区| 日本免费网站观看| 亚洲JIZZJIZZ妇女| 四虎永久在线精品免费观看地址 | 亚洲国产精华液网站w| 在线观看免费无码专区| 亚洲国产成人一区二区三区| 8x8×在线永久免费视频| 亚洲成a人片7777| 无码国产精品一区二区免费| 亚洲中文无码亚洲人成影院| 日韩高清免费在线观看| 免费大片av手机看片高清| 久久精品夜色噜噜亚洲A∨| 免费国产99久久久香蕉| 亚洲男女一区二区三区| 女人张开腿等男人桶免费视频| 国产偷国产偷亚洲清高APP| 亚洲AV无码之日韩精品| 中文字幕在线免费看线人| 亚洲精品国产成人99久久| 99爱在线精品免费观看| 精品特级一级毛片免费观看| 亚洲午夜久久久久久噜噜噜| 2021精品国产品免费观看 | 亚洲va成无码人在线观看| 免费日本黄色网址| 国产成人AV免费观看| 亚洲一区无码中文字幕乱码| 日韩精品成人亚洲专区| 免费国产在线视频| 亚洲国产精品网站在线播放 | 色噜噜综合亚洲av中文无码| 女人18毛片水最多免费观看| 久久www免费人成看国产片| 亚洲美女精品视频|