Database Access每次压缩时都会创建新文件&;修理

Database Access每次压缩时都会创建新文件&;修理,database,ms-access,ms-access-2007,repair,compact-database,Database,Ms Access,Ms Access 2007,Repair,Compact Database,它并不总是这样做,但自从我分割数据库并将前端作为ACCDE文件以来,每当我尝试压缩和修复任何一个文件时,都会生成一个名为“database 1”的新文件,并且我的原始文件大小不变 这正常吗 我的ACCDB大约是20MB,我的ACCDE在第一次使用后刚刚超过1M。开张前,账户只有60万美元(我有很多表单和查询,并定期存储PDF附件。新文件是因为压缩和修复过程未完成,因此它无法删除原始文件并重命名压缩文件。这可能是因为它没有独占访问权限。在压缩和修复之前,请确保所有人都已离开系统。Check同时确认

它并不总是这样做,但自从我分割数据库并将前端作为ACCDE文件以来,每当我尝试压缩和修复任何一个文件时,都会生成一个名为“database 1”的新文件,并且我的原始文件大小不变

这正常吗


我的ACCDB大约是20MB,我的ACCDE在第一次使用后刚刚超过1M。开张前,账户只有60万美元(我有很多表单和查询,并定期存储PDF附件。

新文件是因为压缩和修复过程未完成,因此它无法删除原始文件并重命名压缩文件。这可能是因为它没有独占访问权限。在压缩和修复之前,请确保所有人都已离开系统。Check同时确认您对该文件夹拥有完全权限。

新文件是因为压缩和修复过程未完成,因此它无法删除原始文件并重命名压缩文件。这可能是因为它没有独占访问权限。在压缩和修复之前,请确保系统中的所有人都已退出。还请检查您是否拥有我对该文件夹拥有完全权限。

这取决于您的操作方式

使用Jet复制对象(JRO)库时,方法
JRO.JetEngine.CompactDatabase
定义为

Sub CompactDatabase(SourceConnection As String, Destconnection As String)
如果为两个参数提供相同的连接字符串,则会出现错误,“数据库已存在”


因此,当使用JRO yes时,压缩时创建新文件是正常的。

这取决于您如何操作

使用Jet复制对象(JRO)库时,方法
JRO.JetEngine.CompactDatabase
定义为

Sub CompactDatabase(SourceConnection As String, Destconnection As String)
如果为两个参数提供相同的连接字符串,则会出现错误,“数据库已存在”


因此,当使用JRO是时,压缩时创建新文件是正常的。

在某些情况下,可能是这样,我也有同样的问题。在我的情况下,这与它所在的网络驱动器有关


我的解决方法是将其放入C:\中,然后在那里进行操作,然后在完成压缩和修复后将其移回网络驱动器。

在某些情况下,可能是这样,我也会遇到同样的问题。在我的情况下,这与它所在的网络驱动器有关


我的解决方法是将其放入C:\并在那里执行,然后在压缩和修复完成后将其移回网络驱动器。

您还应该查看新创建的文件,看看它是否有MSysCompactErrors表。通常,在您没有独占访问权限的情况下尝试的压缩甚至不会启动——访问UI会给出您收到一条消息,说它无法执行此操作,因为有其他人正在使用它。因此,我怀疑实际修复操作中出现了故障。我尝试了独占访问,还查找了错误表,我的情况似乎都不是这样。您还应该查看新创建的文件,看看它是否有MSysCompactErrors表。N通常,在您没有独占访问权限的情况下尝试的压缩甚至不会启动--access UI会给您一条消息,告诉您它无法执行此操作,因为其他人正在使用它。因此,我怀疑实际修复操作中出现了故障。我尝试了独占访问,还查找了错误表,两者似乎都没有对我来说。我只是使用Office按钮->管理菜单中的压缩和修复。我只是使用Office按钮->管理菜单中的压缩和修复。你应用了SP 2吗?请参阅(搜索“压缩”)。你应用了SP 2吗?请参阅(搜索“压缩”)。