300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > java连接.accdb_尝试通过Java 8中的JDBC-ODBC连接到.accdb文件时...

java连接.accdb_尝试通过Java 8中的JDBC-ODBC连接到.accdb文件时...

时间:2022-10-12 16:32:22

相关推荐

java连接.accdb_尝试通过Java 8中的JDBC-ODBC连接到.accdb文件时...

我正在使用Eclipse EE IDE中的Java项目,我必须查询.accdb文件.

问题是当我尝试加载驱动程序然后连接到数据库时,它给我一个异常错误.

我的代码:

try{

String filePath = "//myfilepathtomydb/BLABLA/example.accdb"

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + filePath;

Connection database = DriverManager.getConnection(url);

System.out.println("Connection sucessful");

} catch (ClassNotFoundException e){

System.err.println("Got an exception");

System.err.println(e.getMessage());

e.printStackTrace();

} catch (SQLException sqle) {

sqle.printStackTrace();

// TODO: handle exception

}

例外:

Got an exception

sun.jdbc.odbc.JdbcOdbcDriver

java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver

at .URLClassLoader$1.run(URLClassLoader.java:372)

at .URLClassLoader$1.run(URLClassLoader.java:361)

at java.security.AccessController.doPrivileged(Native Method)

at .URLClassLoader.findClass(URLClassLoader.java:360)

at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)

at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

at java.lang.Class.forName0(Native Method)

at java.lang.Class.forName(Class.java:259)

at project.Main.main(Main.java:15)

我在64位Windows中使用32位Eclipse,并且从我读过的这种连接到数据库的方式不支持64位JRE,所以我使用的是选择的32位JRE( jdk1.8.0_05)在我的运行配置中,我在VM中使用了’-d32’参数.

显然JdbcOdbcDriver应该在rt.jar中,但是当我查找它时,我找不到以下包:sun.jdbc.odbc.JdbcOdbcDriver.

如果有人可以解释我的问题,任何错误或愚蠢的事情,我说也可以随意纠正我,将不胜感激.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。