我必须在Netbeans“服务”选项卡中定义一个新的驱动程序
服务->数据库->驱动程序->新驱动程序...
因为我想在UCanAccess的上下文中使用“数据库中的实体类”向导。
第一步:“新驱动程序”起作用(仅声明;-))
第二步:“使用...连接”
“测试连接”按钮会导致错误消息:
无法建立与
jdbc:ucanaccess:// F:\ WorkspaceNetbeans \ MSAccessDB \ data \ Datenbank2.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位
Microsoft Office 2013
NetBeans IDE 8.0
Java 1.8
问题类似于:“JT400和UCanAccess之间发生冲突?” Conflict between JT400 and UCanAccess?
但是那里的答案对我的问题没有帮助。
有什么想法可以解决我的问题吗?
最佳答案
UCanAccess 2.0.4.1已发布,现在您可以将UCanAccess配置为NetBeans服务。
如在UCanAccess网站(选项卡“jdbc客户端工具”)中所述,您必须:
-在“驱动程序文件”字段中,添加ucanaccess.jar和所有依赖项。我已经将UCanAccess发行版中的commons-logging升级到1.1.1,因此您可以将该jar与NetBeans8一起使用。
-对jdbc网址使用以下模式:
jdbc:ucanaccess://; showschema = true
Showschema连接属性必须设置为true。