Knowledge Base

ACC97: "2004: Out of Memory" Error when Running Query

Article ID: 191743

Article Last Modified on 1/23/2007


APPLIES TO


This article was previously published under Q191743
Advanced: Requires expert coding, interoperability, and multiuser skills.

SYMPTOMS

When you run a query, you may receive the following error message when memory is still available:
2004 'Out of Memory.'
You may also receive the error message:
Query too complex.

CAUSE

You have a newer version of the Microsoft Jet database engine than the one originally installed by your Microsoft product. When you use Microsoft Data Access Objects (DAO) code to get data from a Jet database, you may see this problem if you are doing the following:
  • Using code to loop through a recordset based on a linked table.
  • Working with a QueryDef
The error has been reported to occur in the following languages: Visual Basic and Visual C++ (using MFC), and with the DAO Software Development Kit. This problem is related to the Jet database engine itself, not to DAO.

RESOLUTION

NOTE: You should first verify that you have not actually run out of memory and that your Temp folder (directory) is set to a valid folder and is not full. If neither of these conditions is true, you may be experiencing this problem.

To resolve this problem, do one of the following:
  1. Obtain and install the Microsoft Office 97 Service Release 2. For more information about getting this Service Release, see the following article in the Microsoft Knowledge Base:

    151261 OFF97: How to Obtain and Install MS Office 97 SR-2

  2. Obtain Jet35sp3.exe from the Microsoft Web site; this file contains the updated version 3.51 of the Microsoft Jet database engine. For information on how to obtain Microsoft Jet 3.51, please see the following article in the Microsoft Knowledge Base:

    172733 ACC97: Updated Version of Microsoft Jet 3.5 Available for Download

STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem no longer occurs in Microsoft Access 97 SR-2.

MORE INFORMATION

The following is a list of the Jet DLL versions and whether they show the problem:
For further information about the different versions of the Jet database engine, please refer to the following article in the Microsoft Knowledge Base:

178880 INFO: Identifying the Jet Database Engine Components

Keywords: kbbug kbpending KB191743