Ucanaccess 4.0.3 在我的数据库中找不到特定表

Posted

技术标签:

【中文标题】Ucanaccess 4.0.3 在我的数据库中找不到特定表【英文标题】:Ucanaccess 4.0.3 cannot find a specific table in my DB 【发布时间】:2018-05-10 17:21:50 【问题描述】:

我正在将 jdbc 与 ucanaccess 一起使用...当我连接到数据库时,Ucanaccess 没有找到一个表...我在 NetBeans 的调试模式下看到了...

因此,当我在该表上尝试事务时,我得到:

UCAExc:::4.0.3 用户缺少权限或找不到对象 [我的表的名称]

我猜其他的一切都很完美,因为当我在另一张桌子上执行select 时它工作了......

我正在使用:

ucanaccess 4.0.3 MS Access 2007 JDK:java 1.8.0_151 Netbeans:NetBeans IDE 8.2

更新

使用 console.bat 打开数据库时(顺便说一下,此文件位于 UcanAccess 下载文件夹中)我收到以下警告/错误:

警告:在第 9093 页查找使用图,但页面类型为 1

无法加载过程 Query4 用户缺少权限或找不到对象:[My Table Name]

无法解析表 [我的表名]

【问题讨论】:

尝试使用console.bat 或console.sh 打开数据库文件,看看您是否收到有关该表的任何警告。 @GordThompson 很棒的提示...我不知道console.bat...我做到了,我在我的 OP 中写了消息...我的表虽然存在于 Access 中,但不是在console.bat加载的表中 听起来您的数据库文件可能有轻微损坏。为安全起见进行备份,然后在 Access 中打开它并尝试对其进行压缩和修复数据库。 @GordThompson 是的!这解决了这个问题。现在一切正常...请问您是如何从我给您的信息中得出这个结论的?您也可以将此添加为答案,我会接受它 Warning: Looking for usage map at page 1774, but page type is 1 in UCanAccess的可能重复 【参考方案1】:

警告:在第 9093 页查找使用图,但页面类型为 1

强烈建议数据库文件损坏。 UCanAccess 使用的记录管理器 Jackcess 从文件中检索到一页(块)数据,期望它被标记为“使用图”,但它被标记为其他东西。

对于损坏的数据库文件,最常见的解决方案是在 Access 中打开它,然后对其执行“压缩和修复数据库”操作。

【讨论】:

谢谢。它现在工作正常。如果您认为我的问题可能对其他人有所帮助,请投票给我...

以上是关于Ucanaccess 4.0.3 在我的数据库中找不到特定表的主要内容,如果未能解决你的问题,请参考以下文章

使用 UCanAccess 保存数据时 Java 应用程序挂起

在 Spring Boot 中使用 UCANACCESS

如何使用 UCanAccess 从 Java 将两个字符串插入我的 Access 数据库?

使用 UCanAccess 创建表后,ms 访问未强制执行非空约束

CREATE TABLE IF NOT EXISTS 在 UCanAccess 中引发错误

UCanAccess 4.0.2 大写列名找不到