我开发了一个Access(2013)应用程序/数据库,它在多个用户的网络位置共享。
数据库的规模迅速扩大,我们使用Compact&不时修复以减少它。但是,今天,压缩使数据库无法使用(" ID不是此表中的索引","无法找到AutoExec"等)。我知道它已经损坏了。
我已尝试恢复旧的可用版本,但问题仍然存在。事情是,除非压缩,否则一切似乎都能正常运作。
所以现在我面临两难困境: 我应该回到一个非常老的版本,还是可以保留当前版本并让它在没有压缩的情况下增长?
答案 0 :(得分:1)
您可以使用here所述的技术从表单中删除已编译的代码。本答案中描述的重建整个数据库选项几乎总能修复这些问题,但是非常耗费人力。
您可以使用我在this answer中描述的技术将所有数据库对象复制到新数据库。但是,这不像重建数据库那么彻底,可能会留下更多问题。
答案 1 :(得分:0)
我之前已解决此错误。如果您有到其他数据库(例如SQL Server)的链接表,并且服务器上的该表被编辑(添加新索引,更改现有索引)而忘记在Access中刷新该链接表的连接({{3} })。因此,为防止发生此错误,在远程表上进行更改后,请不要忘记刷新前端中链接表的连接。