【发布时间】:2015-10-16 12:28:19
【问题描述】:
我正在寻找解决 Eclipse 的问题,我正在尝试使用 java 1.7 通过 ODBC 连接到 MySQL,以及 NetBeans 和 Eclipse 中的相同代码,
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:Gtable","root","");
在 NetBeans 中它工作正常,但在 Eclipse 中返回
Exception in thread "main" java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at testdb2.testd.main(testd.java:11)
我该如何解决?
没用
我现在用这个,
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("sun.jdbc.odbc.JdbcOdbcDriver found");
} catch (ClassNotFoundException cnfe) {
System.out.println("Error: sun.jdbc.odbc.JdbcOdbcDriver not found");
}
它返回 jdbcodbc not found,我在哪里可以得到它?
【问题讨论】:
-
您已经为 UCanAccess JDBC 驱动程序添加了所需的库,但是您正在尝试使用 JDBC-ODBC 桥。它们是连接到 Access 数据库的两种完全不同的方式。如果您真的想使用 UCanAccess(根本不使用 ODBC),那么您的连接 URL 应该以
jdbc:ucanaccess://开头。 (另外,完全去掉Class.forName语句;它不是必需的。) -
我不能使用 ucanaccess,因为我必须使用 ODBC,这是我的任务,jdbc 驱动程序现在可以工作,但 JdbcOdbcDriver 不能。我不知道我在哪里可以得到这个罐子
-
运行应用程序时
System.getProperty("java.version")会返回什么? -
嗯,很奇怪,但是返回 1.8 但我使用的是 1.7,现在我不知道如何更改它
-
在 Eclipse 中,右键单击 Package Explorer 中的项目并选择“Properties”。在“运行/调试”窗格中,编辑当前启动配置并转到“JRE”选项卡。在那里你可以选择另一个 JRE(如果有的话)。
标签: eclipse jdbc netbeans odbc