我们可以在 Oracle 11g 和 jdk1.5 中使用 ojdbc14.jar
Posted
技术标签:
【中文标题】我们可以在 Oracle 11g 和 jdk1.5 中使用 ojdbc14.jar【英文标题】:Can we use ojdbc14.jar with Oracel11g and jdk1.5 【发布时间】:2011-05-21 03:47:54 【问题描述】:我相信这个问题已经提出了不同的风格,但我想再次确认这一点,因为我们非常接近我们的发布并希望与社区进行验证
我们已经使用 Oracle10g 和 java 1.5 和 ojdbc14.jar 有一段时间了。我知道 ojbc14.jar 是针对 java 1.4 的。但幸运的是,我们在 1.5 版本中使用它时从未发现任何问题。不迁移到 ojbc5 的另一个原因是我们在安装的 oracle 10g 中根本没有看到 ojdbc5.jar。
我们现在已将数据库升级到 11g,但我没有看到 ojdbc14.jar。这是否意味着我们必须迁移到 ojdbc5.jar?
我们愿意做出改变。但是进行切换的人能否确认他们在将 JDBC 驱动程序从 ojdbc14.jar 更改为 ojdbc5.jar 时是否看到任何问题
与此相关,如果有人能详细说明这个罐子的 dms 风味以及如何使用它,那就太好了。
【问题讨论】:
【参考方案1】:看看Oracle's JDBC drivers list。对于 11g 和 11g2,仅列出 ojdbc5.jar
和 ojdbc6.jar
。这可能意味着只有它们受到官方支持,所以如果您对 ojdbc14.jar
有疑问,Oracle 可能不会帮助您。
如果 Oracle 的支持对您的管理很重要,我建议升级到 ojdbc5.jar
。
【讨论】:
谢谢。我宁愿去官方支持的东西,即使我们可能看不到问题。【参考方案2】:ojbc14
应该可以在 Oracle11g 上正常工作。 ojbc14
和更高版本的主要区别在于,更高版本支持更新版本的 JDBC API,以及更新版本 oracle 的新功能。
如果您的应用程序与ojbc14
保持一致,则几乎没有理由升级驱动程序,除了尝试跟踪新版本的出现总是一个好主意,以保持您的系统最新.
【讨论】:
谢谢。我们的管理层热衷于升级。知道我们是否需要更改代码来支持新的 jdbc 驱动程序? @Fazal:不,不需要。不过,建议进行彻底的重新测试。【参考方案3】:下面是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 映射到 Date。
【讨论】:
以上是关于我们可以在 Oracle 11g 和 jdk1.5 中使用 ojdbc14.jar的主要内容,如果未能解决你的问题,请参考以下文章