什么是防止Access数据库膨胀的最佳方法

时间:2013-04-05 09:57:31

标签: vba ms-access database-design access-vba

说明:

我正在创建一个将使用多用户功能推出的Access数据库系统。 但是当我在Access 2000(我知道的老学校)中创建这个数据库时,当我的数据库通过40-60MB时会出现很多错误和随机的神秘问题。

我的问题:

有没有人能够很好地解决这个问题,如何缩减它或防止臃肿?

详细信息:

我使用许多本地表结合SQL表和我的前端链接到后端SQL Server。 我已经尝试了紧凑和修复,但它只是将它缩小到大约15MB,并且在用户使用数据库之后,膨胀很快就会膨胀到超过50-60MB!

如果需要更多细节,请告诉我,但这是我问题的粗略轮廓。

非常感谢!

2 个答案:

答案 0 :(得分:2)

以下是您可以遵循的一些想法。

你说你也有很多本地表。将本地表拆分为另一个Access数据库。所以你将有2个后端(1个SQL Server& 1 Access)和前端。

创建一个批处理文件,使用 / compact 选项打开本地表后端数据库。所以,它看起来像这样:

"C:\Prog...\Microsoft...\Officexx\ C:\ProjectX_backend.mdb /compact"

然后使用计划任务每​​天运行此批处理文件。除非你以任何方式编辑,否则你的前端永远不需要压缩。

答案 1 :(得分:1)

如果你遇到名声很差的2000,那么你必须深入了解你的应用程序并找出造成这种膨胀的原因。最常见的原因是批量插入后跟删除。其他原因,是使用OLE对象字段。其他原因是形式等对象的程序化变化。你真的必须通过你的应用程序,找到具体的原因。

只连接到支持的服务器并且不对本地对象进行更改的mdb文件不应该增长。

至于你的随机问题,除了2000版本中缺乏稳定性之外,如果你的mdb文件在网络上共享,你应该查看计算机,坏硬盘和网络控制器坏的RAM。