Oracle的JDBC驅動的版本說明
在使用Oracle JDBC驅動時,有些問題你是不是通過替換不同版本的Oracle JDBC驅動來解決的?最常使用的ojdbc14.jar有多個版本,classes12.jar有多個版本你瞭解嗎?
連線型別:
1、JDBC OCI: oci是oracle call interface的縮寫,此驅動類似於傳統的ODBC 驅動。因為它需要Oracle Call Interface and Net8,所以它需要在執行使用此驅動的JAVA程式的機器上安裝客戶端軟體,其實主要是用到orcale客戶端裡以dll方式提供的oci和伺服器配置。
2、JDBC Thin: thin是for thin client的意思,這種驅動一般用在執行在WEB瀏覽器中的JAVA程式。它不是通過OCI or Net8,而是通過Java sockets進行通訊,是純java實現的驅動,因此不需要在使用JDBC Thin的客戶端機器上安裝orcale客戶端軟體,所以有很好的移植性,通常用在web開發中。
隨Oracle 8i釋出的Oracle JDBC驅動8.1.7版本
classes111.zip 適用於JDK 1.1.x
classes12.zip 適用於JDK 1.2.x
只有zip檔案無jar檔案
隨Oracle 9i釋出的Oracle JDBC驅動9.2.0版本
新特性:
1、Thin連線型別的驅動對BFILE,BLOB,CLOB 提供直接支援,以前通常是呼叫PL/SQL來實現。
2、支援JDBC 3.0 特性
3、ojdbc14.jar 支援JDK 1.4
4、ojdbc14.jar 支援儲存點(Savepoint)
5、可以在不同的連線池中使用PreparedStatement,這是重要的效能提升
從此以後新的jar檔案的命名採用 ojdbc<jdk ver>.jar 格式 ,以前的jar檔名稱不變
classes111.jar 適用於JDK 1.1.x
classes12.jar 適用於JDK 1.2 and JDK 1.3 (我的專案環境JDK1.6,oracle 10g,windows,用了這個目前沒發現問題)
ojdbc14.jar 適用於JDK 1.4
***_g.jar 只是用javac -g編譯,生成所有除錯資訊,其它全一樣
classes111.zip 適用於JDK 1.1.x
classes12.zip 適用於JDK 1.2.x
隨Oracle 10.2釋出的Oracle JDBC驅動10.2版本
1、全面支援JDK 1.5
2、支援JDBC 3.0
classes12.jar 適用於JDK 1.2 and JDK 1.3.
ojdbc14.jar 適用於 JDK 1.4 and 5.0
***_g.jar 只是用javac -g編譯,生成所有除錯資訊,其它全一樣
隨Oracle 11.1釋出的Oracle JDBC驅動11.1版本
新特性:
1、支援JDK6,支援JDBC 4.0,新的java.sql.SQLXML型別沒有被支援,是使用ojdbc6.jar來支援。J2SE 5.0 和 JDBC 3.0 全面支援使用ojdbc5.jar。
2.不再支援oracle.jdbc.driver。從9.0.1開始的每個release都推薦使用oracle.jdbc。這一天終於到來,在11g中,引用oracle.jdbc.driver不再通過編譯。
3.j2se 1.2,1.3,1.4不再支援。11R1不再包括這些版本的jar和zip,如果仍然使用這些版本,可以繼續使用10gR2的jdbc。
4.11gR1 Thin driver支援AES加密演算法,SHA1 hash演算法,RADIUS, KERBEROS,SSL認證機制.
5.支援ANYDATE和ANYTYPE型別。這兩種型別自9i引入,11R1前,程式設計師只能通過PL/SQL操作。
6.高階佇列支援。11R1提供了訪問AQ的高效能介面。
7.支援資料庫變更通知。
8.Thin和OCI的資料庫啟動和關閉。11R1提供了這樣的方法來啟動和關閉資料庫。
9.新的工廠方法。Oracle JDBC 11R1 oracle.jdbc.OracleConnection提供了建立Oracle物件的工廠方法。
包括ARRAY, BFILE, DATE, INTERVALDS, NUMBER, STRUCT, TIME,TIMESTAMP,TIMESTAMP等。
ojdbc5.jar: 適用於jdk5
ojdbc6.jar: 適用於jdk6
***_g.jar 只是用javac -g編譯,生成所有除錯資訊,其它全一樣
---------------------------------------------------
總體講新版本的JDBC驅動 效能強、很多bug被發現並已解決。
我遇到的,之前使用ojdbc14.jar(不記得哪個版本了)批量插入10萬條,實際只插入了3萬多條,其它的丟失了,換ojdbc6.jar後,一次commit批量插入100萬條也OK了。
儘量使用和資料庫版本一致的驅動,有bug時,換高版本的JDBC驅動試試 。
如果一個jdbc的jar包你不知道是那個版本的,可以解壓這個jar包,再META-INF\MANIFEST.MF 檔案中找"Oracle JDBC Driver version - 10.1.0.2.0"字樣,就知道版本了
附件-->用過的驅動
---------------------------------------------------
參考:
http://www.oracle.com/technetwork/database/enterprise-edition/jdbc817-100207.html
http://www.inrialpes.fr/helix/people/genoud/ENSJAVA/cours/Java/JDBCORacle9.2.0.1/jdbc_readme9201.html
http://www.oracle.com/technetwork/database/enterprise-edition/readme-10201-097623.html?ssSourceSiteId=otncn
http://www.oracle.com/technetwork/database/enterprise-edition/111070-readme-083278.html?ssSourceSiteId=otncn
感謝:http://elf8848.iteye.com/blog/811037
相關文章
- oracle中jdbc驅動包的說明OracleJDBC
- oracle jdbc jar 的一些說明OracleJDBCJAR
- 檢視JDBC驅動版本JDBC
- Oracle 版本說明Oracle
- SQLServer2000 JDBC驅動的完整安裝及測試說明 (轉)SQLServerJDBC
- maven打包oracle jdbc驅動MavenOracleJDBC
- Oracle 更新 OPatch 工具版本 的方法 說明Oracle
- oracle11g jdbc新的驅動包OracleJDBC
- suse目前的版本說明
- PG jdbc 驅動的cursor 的使用JDBC
- 尋MYSQL 的JDBC驅動jar??MySqlJDBCJAR
- openssh版本更新與說明 openssl版本更新與說明
- Mysql JDBC Url引數說明MySqlJDBC
- mysql 版本說明MySql
- MySQL JDBC驅動版本與資料庫版本的對應關係及注意事項MySqlJDBC資料庫
- 關於DedeCMS版本號的說明
- windows7 可以安裝oracle 版本說明WindowsOracle
- oracle12c jdbc驅動版本使用注意事項:ora-28040:沒有匹配的驗證協議OracleJDBC協議
- Oracle內建事件的說明Oracle事件
- 如何檢視Oracle JDBC版本OracleJDBC
- Oracle 啟動例程 STARTUP引數說明Oracle
- oracle常見的等待事件說明Oracle事件
- Oracle Audit 功能的使用和說明Oracle
- Oracle Latch 說明Oracle
- Oracle Namespace 說明Oraclenamespace
- Mysql java JDBC驅動jar包MySqlJavaJDBCJAR
- Sybase15驅動包的問題com.sybase.jdbc3.jdbc.SybDriverJDBC
- 有這個資料庫的JDBC的驅動程式嗎?資料庫JDBC
- Oracle中password file的作用及說明Oracle
- Oracle PL/SQL 自治事務的說明OracleSQL
- JDBC概述以及幾種驅動程式JDBC
- oracle orapwd使用說明Oracle
- Oracle BBED 工具 說明Oracle
- ORACLE event和說明Oracle
- Oracle BBED 工具說明Oracle
- Oracle Logminer 說明Oracle
- Oracle JDBC驅動使用setDate()、setTimestamp()導致全表掃描OracleJDBC
- 再說驅動程式