ACC: Explicitly Close Recordsets to Help Prevent Database Bloat (186311)
The information in this article applies to:
- Microsoft Access for Windows 95 7.0
- Microsoft Access 97
This article was previously published under Q186311 Moderate: Requires basic macro, coding, and interoperability skills.
SYMPTOMS
In the versions of Microsoft Access listed at the beginning of this
article, if you use Data Access Objects (DAO) to open a recordset and don't
explicitly close the recordset, DAO may hold onto the memory that it used
for its previous compile until the next recordset is opened.
CAUSE
Because the recordset memory is not released, each time that you loop through code, DAO may recompile, using more memory and increasing the size of the database.
RESOLUTION
To avoid consuming unnecessary resources and increasing database size, use
the Close method of the Recordset object to explicitly close the
Recordset's memory when you no longer require the Recordset.
If the database has increased in size because you did not use the Close
Method of the Recordset object, you can subsequently reduce its size by
compacting the database.
REFERENCES
For more information about issues that can arise from leaving recordsets
open in DAO please see the following articles in the Microsoft Knowledge
Base:
164455
ACC: Problems Quitting Microsoft Access
164481
ACC97: Tips for Converting Applications to Using ODBCDirect
Modification Type: | Minor | Last Reviewed: | 10/11/2006 |
---|
Keywords: | kbprb kbProgramming KB186311 |
---|
|