Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java代码中查找MS Access版本号_Java_Ms Access_Jdbc Odbc - Fatal编程技术网

如何在java代码中查找MS Access版本号

如何在java代码中查找MS Access版本号,java,ms-access,jdbc-odbc,Java,Ms Access,Jdbc Odbc,是否有一种方法可以使用java代码查找MS Access的版本号。我正在使用jdbc odbc桥连接MS Access 我的用例是使用JDBC加载mdb和accdb驱动程序 DriverManager.getConnection(“jdbc:odbc:DRIVER={Microsoft Access驱动程序(.mdb.accdb);}DBQ=filename”) 如果我使用access 2003或以前的版本,则不会安装accdb驱动程序。所以,在加载时会抛出异常。解决的办法是什么 提前谢谢 问候

是否有一种方法可以使用java代码查找MS Access的版本号。我正在使用jdbc odbc桥连接MS Access

我的用例是使用JDBC加载mdb和accdb驱动程序 DriverManager.getConnection(“jdbc:odbc:DRIVER={Microsoft Access驱动程序(.mdb.accdb);}DBQ=filename”)

如果我使用access 2003或以前的版本,则不会安装accdb驱动程序。所以,在加载时会抛出异常。解决的办法是什么

提前谢谢

问候,,
Ganesan

从java.sql.Connection中,您可以使用getMetaData()来获取。如果驱动程序实现了此信息,这里有几种方法(例如)可用于获取版本信息。

好主意,但不幸的是
getDatabaseMajorVersion()
在与Access数据库文件的连接上运行时抛出“UnsupportedOperationException”。请编辑您的问题以澄清是否需要:(1)计算机上安装的Microsoft Access程序本身的版本(如果有),(2)正在访问数据库文件的ACE/Jet数据库引擎的版本,或(3)正在访问的数据库文件的版本(文件格式)。您是否尝试捕获在尝试使用ACE驱动程序时发生的任何错误(
*.mdb,*.accdb
)然后尝试使用Jet驱动程序(
*.mdb
)来代替?