问题描述
几个小时以来,我一直在尝试使用“ucanaccess”库连接到 microsoft access 2007 数据库。
但这对我来说是不可能的,因为我在连接时总是收到错误“不支持的新版本:32”。我已经使用 maven 尝试了所有已发布的 'ucanaccess' 版本,但没有一个对我有用。
错误堆栈跟踪:
net.ucanaccess.jdbc.ucanaccesssqlException: UCAExc:::5.0.1 Unsupported newer version: 32
at net.ucanaccess.jdbc.ucanaccessDriver.connect(ucanaccessDriver.java:231)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at morales.david.server.utils.AccessConnection.open(AccessConnection.java:26)
at morales.david.server.managers.ImportManager.importDatabase(ImportManager.java:42)
at morales.david.server.clients.ClientProtocol.receiveFile(ClientProtocol.java:169)
at morales.david.server.clients.ClientProtocol.parseInput(ClientProtocol.java:40)
at morales.david.server.clients.ClientThread.run(ClientThread.java:67)
Caused by: java.io.IOException: Unsupported newer version: 32
at com.healthmarketscience.jackcess.impl.JetFormat.getFormat(JetFormat.java:309)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.<init>(DatabaseImpl.java:538)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.open(DatabaseImpl.java:415)
at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:267)
at net.ucanaccess.jdbc.DefaultjackcessOpener.open(DefaultjackcessOpener.java:37)
at net.ucanaccess.jdbc.DBReference.<init>(DBReference.java:171)
at net.ucanaccess.jdbc.DBReferenceSingleton.loadReference(DBReferenceSingleton.java:51)
at net.ucanaccess.jdbc.ucanaccessDriver.connect(ucanaccessDriver.java:91)
... 7 more
我使用的版本:
<dependency>
<groupId>net.sf.ucanaccess</groupId>
<artifactId>ucanaccess</artifactId>
<version>5.0.1</version>
</dependency>
这是我用来打开连接的代码:
public void open() {
try {
String path = "jdbc:ucanaccess://C:\\Users\\david\\Desktop\\dam.accdb";
Class.forName("net.ucanaccess.jdbc.ucanaccessDriver");
connection = DriverManager.getConnection(path);
} catch (ClassNotFoundException | sqlException e) {
e.printstacktrace();
}
}
有人知道如何解决吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)