Access VBA:内存控制,mdb文件大小

Posted

技术标签:

【中文标题】Access VBA:内存控制,mdb文件大小【英文标题】:Access VBA: Memory control, mdb file size 【发布时间】:2011-07-28 21:22:39 【问题描述】:

有哪些好的做法可以控制使用 VBA 阻塞的内存。 例如,我声明了对象、打开的连接、打开的记录集等,但是这些内存会再次被释放吗?

当我开始我正在处理的项目时,我的 Access .mdb 文件只有 300kb,现在是 13Mb!!!! (而且它只有 300 行代码) 每次我运行我的代码时,我都可以看到我的 .mdb 文件大小增加了几百 kb。

所以请帮我看看我应该如何保持我的文件大小。

谢谢!

【问题讨论】:

【参考方案1】:

您始终可以压缩和修复您的 Access 数据库。在 Access 2003 中,此选项位于工具 > 数据库实用程序 > 压缩和修复下。

当您使用它时,数据库的大小总是会增加。

您始终可以使用 VBA 做的一件事是确保在使用完连接和记录集后关闭它们。

【讨论】:

哇,这是一个很酷的功能,无论如何我可以从内部自动调用该功能吗? (哈哈,我对此表示怀疑,但它会很酷!) 我的数据库一直都是打开的。所以我有一个计时器表格,可以在晚上保持打开并压缩它。但是 13MB 对于 Access 来说仍然很小。我的数据库超过 1GB,因此此时大小变得更加令人担忧。【参考方案2】:

在 Access 2010 中,您可以使用“压缩和修复数据库”工具(在“数据库工具”选项卡上)清理数据库。这将尽可能地缩小文件大小。

【讨论】:

以上是关于Access VBA:内存控制,mdb文件大小的主要内容,如果未能解决你的问题,请参考以下文章

MS Access 2003 - 创建 MDE 文件失败:错误 VBA 已损坏?

如何在VBA中用ADO连接远程的access数据库

Access数据库:能否编译mdb文件到exe文件?

为啥我应该关心压缩 MS Access .mdb 文件?

打开access为何提示"如果文件包含有意破坏计算机的代码,文件可能会不安全·······"?

使用VBA打开由mdw文件保护的ms-access数据库时模拟SHIFT键?