访问2010 DB爆炸的大小

时间:2011-04-20 23:32:21

标签: ms-access-2010

我有一个从Excel电子表格创建的Access数据库。

数据库包含一个包含58个字段的主表,另外三个包含大约10个字段的表,以及包含两个字段的最后一个表。大多数新信息都会进入主表。

经过一天的使用(两个用户),数据库从20MB爆炸到50MB。正在添加一些新记录,但不足以生成30MB。我从Excel完成导入并压缩数据库后,我的主表有4000条记录。

用户没有添加超过几十个新记录,并且数据库在压缩后会下降到大约20MB。这是2010年常见的事吗? 2000/2003年从未体验过这一点。

谢谢, Westley的

2 个答案:

答案 0 :(得分:4)

是的,这很常见。

  

Access的最常见原因   数据库臃肿被过度使用了   临时表和过度使用   non-querydef SQL。每当你编码一个   查询定义之外的SQL字符串,   Access必须“绑定”该语句   每次都运行。这个流程   花费少量时间和使用   大量的工作空间   直到你压缩才恢复   D b。 Querydef是它们的“绑定”   保存,当db是   压实。 Ref

大量插入/删除也会导致增长。

ACC: Database Grows Rapidly When You Modify SQL Statements

感兴趣?:Growing MS Access File Size problem

答案 1 :(得分:0)

报告中的图片也可能导致数据库增大 我发现访问数据库可以增加大小的另一种方法。如果您有一个报告(可能还有一个表格?),其中有从外部文件插入的图片,则“图片类型”选项之一是“共享的”。如果使用此选项,则每次使用其他图片时,Access都会存储该图片的新本地副本。我的1Mbyte Access数据库最终得到500MByte内部存储的图片。似乎没有任何刷新它们的方法,并且压缩数据库不会清除它们。
解决方案是使用“链接的”“图片类型”设置。我将数据库内容复制到一个新数据库中,并保持在1MByte。