【发布时间】:2014-06-05 06:23:57
【问题描述】:
我必须在 Netbeans 的“服务”选项卡中定义一个新的驱动程序
服务->数据库->驱动程序->新驱动程序...
因为我想在 UCanAccess 的上下文中使用“数据库中的实体类”-向导。
第一步:“新驱动程序”确实有效(仅声明 ;-))
- 驱动程序文件:f:\WorkspaceNetbeans\MSAccessDB\lib\UCanAccess-2.0.4-bin\ucanaccess-2.0.4.jar
- 驱动类:net.ucanaccess.jdbc.UcanaccessDriver
- 名称:msaccess
第二步:“使用...连接”
- JDBC URL:jdbc:ucanaccess://F:/WorkspaceNetbeans/MSAccessDB/data/Datanbank2.accdb
- “用户名”和“密码”留空
“测试连接”按钮导致错误消息:
无法建立连接 jdbc:ucanaccess://F:\WorkspaceNetbeans\MSAccessDB\data\Datanbank2.accdb 使用
net.ucanaccess.jdbc.UcanaccessDriver(无法初始化类
net.ucanaccess.jdbc.UcanaccessDriver)
我从http://ucanaccess.sourceforge.net/site.html 获得了最新的 ucanaccess Netbeans 类路径中的 ucanaccess-2.0.4.jar、commons-lang-2.6.jar、commons-logging-1.0.4.jar、hsqldb.jar、jackcess-2.0.3.jar。
通过 jdbc 连接到 ucanaccess 的老式方式工作正常。
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String connectString = "jdbc:ucanaccess://" + "f:/WorkspaceNetbeans/MSAccessDB/data/Datenbank2.accdb";
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
Connection conn = DriverManager.getConnection(connectString, "", "");
conn.createStatement().execute("CREATE TABLE example1 (id COUNTER PRIMARY KEY,descr text(400), number numeric(12,3), date0 datetime) ");
}
相同的连接字符串也可以正常工作,使 DBeaver 能够连接到 MSAccess 数据库。
我的设置:
Windows 7 专业版 64 位
微软 Office 2013
NetBeans IDE 8.0
Java 1.8
问题类似于:“JT400 和 UCanAccess 之间的冲突?” Conflict between JT400 and UCanAccess?
但那里的答案对我的问题没有帮助。
有什么想法可以解决我的问题吗?
【问题讨论】:
-
我能够在 Win8.1_Pro 32 位、NetBeans IDE 8.0、JDK 1.7、UCanAccess 和 Jackcess 2.0.4 版本上重现该问题
-
我正在研究这个似乎与 netbeans 相关的棘手问题。应列出所有依赖项(commons-lang-2.6.jar、commons-logging-1.0.4.jar、hsqldb.jar、jackcess-2.0.3.jar)以及 ucanaccess.jar 作为驱动程序文件。 .但我仍然面临着另一个问题。我希望尽快让你知道我的发现。
标签: java jdbc connection netbeans-8 ucanaccess