2010-12-06 529 views
12

我相信這個問題已經有不同的口味,但我想再次證實這一點,因爲我們非常接近我們的版本,並且想與社區進行驗證我們是否可以使用ojdbc14.jar與Oracel11g和jdk1.5

我們已經在ojdbc14.jar中使用Oracle10g和java 1.5了很長時間了。我知道ojbc14.jar迎合了java 1.4。不過謝天謝地,我們在1.5版本中使用它時從未看到任何問題。不移動到ojbc5的另一個原因是,我們沒有在安裝的Oracle 10g中看到ojdbc5.jar。

我們現在升級了我們的數據庫爲11g,而我沒有看到ojdbc14.jar。這是否意味着我們必須移動到ojdbc5.jar?

我們願意做出改變。但是,如果開關人員在將JDBC驅動程序從ojdbc14.jar更改爲ojdbc5.jar時看到任何問題,他們是否可以確認是否可以確認:

與此相關,如果有人可以詳細說明dms風格這個罐子以及它如何使用。

回答

13

ojbc14對於Oracle11g應該可以很好地工作。 ojbc14和更高版本之間的主要區別是支持較新版本的JDBC API的較新版本以及較新版本的Oracle的新功能。

如果您的應用程序與ojbc14相同,那麼升級驅動程序幾乎沒有什麼理由,除了隨時嘗試跟蹤新修訂版總是一個好主意,以確保您的系統保持最新狀態。

+0

謝謝。我們的管理層熱衷於升級。任何想法,如果我們需要更改代碼來支持新的jdbc驅動程序? – Fazal 2010-12-06 18:35:37

+0

@Fazal:不,不應該要求。但是,徹底的重新測試是可取的。 – skaffman 2010-12-06 18:37:01

14

看看Oracle's JDBC drivers list。對於11g和11g2,僅列出了ojdbc5.jarojdbc6.jar。這可能意味着只有他們得到官方支持,所以如果您遇到ojdbc14.jar問題,Oracle可能不會幫助您。

如果Oracle的支持對您的管理很重要,我建議升級到ojdbc5.jar

2

下面是suggestions from Oracle

11.1驅動程序默認轉換SQL DATE到時間戳從數據庫中讀取數據時。這總是正確的做法,9i的改變是一個錯誤。 11.1車手已恢復到正確的行爲。即使您沒有在應用程序中設置V8Compatible,在大多數情況下也不應該看到任何行爲差異。如果您使用getObject讀取DATE列,您可能會注意到不同之處。結果將是一個時間戳而不是日期。由於Timestamp是Date的一個子類,所以這通常不是問題。如果您依賴從DATE到Date的轉換來截斷時間組件,或者如果您對該值執行toString,您可能會注意到不同之處。否則,更改應該是透明的。

如果由於某種原因,您的應用程序對此更改非常敏感,並且您只需具有9i-10g行爲,則可以設置連接屬性。將mapDateToTimestamp設置爲false,驅動程序將恢復爲默認的9i-10g行爲並將DATE映射到日期。

相關問題