如何检查特定驱动程序实现了哪个JDBC API版本

14

我该如何检查我正在使用的JDBC驱动程序的类型?

我目前正在使用ojdbc14.jar。 我如何检查我的驱动程序是否符合JDBC 4标准?

5个回答

17

您可以运行以下命令来获取驱动程序版本。

java -jar ojdbc14.jar

这给了我输出:

Oracle 11.1.0.7.0-Production JDBC 3.0 compiled with JDK5

所以驱动程序版本为11.1.0.7.0,且符合JDBC 3.0标准。


1
MySQL的怎么样?运行它会显示“没有主清单属性”。 - Pacerier
对于 ojdbc8-19.3.0.0.jar 文件: "Oracle 19.3.0.0.0 JDBC 4.2 是在 javac 1.8.0_201 上编译的,编译时间为 Thu_Apr_04_20:28:01_PDT_2019" - Peter Wippermann

6

getJDBCMajorVersiongetJDBCMinorVersion

你可以在运行时查询你的JDBC驱动程序。

获取DatabaseMetaData对象。调用这两个方法以获取此驱动程序声称支持的JDBC规范的主要版本和次要版本:

请记住,特定的驱动程序可能不支持该版本的JDBC API的每个功能。


4
从这个链接中可以了解到,JDBC驱动程序通常位于安装目录的WL_HOME/server/lib位置。该文件是ojdbc7.jar或ojdbc6.jar(适用于新版本的WLS),或ojdbc14.jar(适用于旧版本的WLS)。
有两种方法可以检查JDBC驱动程序的版本:
1. 打开ojdbc jar文件并进入META-INF文件夹,然后打开“MANIFEST.MF”文件。版本号可以在“Specification-Version”旁边看到。 2. 在上述位置上运行以下命令: java -jar ojdbc6.jar -getversion
请注意,您必须使用适用于正在运行的JDK版本的JDBC JAR文件。例如,“ojdbc5.jar”适用于JDK 1.5。因此,如果您使用JDBC驱动程序JAR文件“ojdbc6.jar”运行JDK 1.5,则会在执行此检查时抛出“java.lang.UnsupportedClassVersionError:Bad version number in .class file”错误消息。

3

3
每个JAR文件都应该有一个清单文件,其中包含打包在JAR文件中的文件的信息。为了检查它,解压缩ojdbc14.jar文件并阅读META-INF/MANIFEST.MF文件。
据我所知,ojdbc14.jar不支持JDBC4。要确保您的版本支持什么,请查看Oracle的说明。

1
我在Mac上使用MySQL,它在哪里写JDBC版本?是 Specification-Version: 4.2?还是 Implementation-Version: 5.1.45?或者是 Bundle-ManifestVersion: 2? JDBC版本是多少? - Pacerier

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接