ACC2000: Records Newly Inserted into Access Database Are Not Immediately Available When Reselecting

This article was previously published under Q245676
This article has been archived. It is offered "as is" and will no longer be updated.
Advanced: Requires expert coding, interoperability, and multiuser skills.

This article applies only to a Microsoft Access database (.mdb).

For a Microsoft Access 2002 version of this article, see 291238.
When inserting records into a Microsoft Access database, immediately attempting to reselect them occasionally does not return all inserted records. This occurs even when the records are inserted and reselected on the same connection.

The problem described in this article affects the Microsoft Jet engine's ability to locate data stored in the connection's cache. The Jet engine examines changes stored in the connection's cache when processing a query. As a result of this problem, running a query on that same connection may not retrieve all of the newly inserted data that satisfy the query's search criteria immediately after adding new rows to your database. After applying this hotfix, that query correctly retrieves all rows in the connection's cache that satisfy the query's search criteria.

Important information:

To increase performance, the Jet engine stores modifications in its cache prior to writing the changes to the file. As a result, modifications currently stored in the connection's cache are visible only on that connection. Other connections are unable to see these changes until the Jet engine flushes them to the database. Note This behavior is normal and is not related to the problem described in this article.
Internal to Jet, the seek methods used to locate the inserted records are occasionally accessing uninitialized memory and picking up incorrect values. Based on these incorrect values, the attempt to locate the appropriate record fails.
To resolve this problem, install the latest Microsoft Jet 4.0 service pack. To download the latest Microsoft Jet 4.0 Service Pack, see the following article in the Microsoft Knowledge Base:
239114 How To: Obtain the Latest Service Pack for the Microsoft Jet 4.0 Database Engine

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was corrected in Microsoft Jet 4.0 Service Pack 5 (SP5).
jet insert select reselect immediately available records missing same connection

Article ID: 245676 - Last Review: 02/28/2014 04:17:38 - Revision: 3.2

  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.1 Service Pack 1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 97 Standard Edition
  • kbnosurvey kbarchive kbqfe kbhotfixserver kbaccess900fix kbaccess97fix kbbug kbfix kbmdac210sp2fix KB245676