ACC: How Microsoft Access Deletes Objects from a Database

This article was previously published under Q90129
This article has been archived. It is offered "as is" and will no longer be updated.
Novice: Requires knowledge of the user interface on single-user computers.

This article describes what happens internally in Microsoft Access when youdelete an object (a table, a form, a query, and so on) from a database.
When you delete an object from the Database window, it is not physicallydeleted from the database at that moment. Instead, it is renamed to atemporary name (for example, ~TMPCLP1) and hidden, so that it disappearsfrom the Database window. The renaming operation occurs very quickly,regardless of the object's size. The hidden object is physically deletedfrom the database as soon as you take any action other than the UndoDeletion action.

Microsoft Access deletes objects in this manner so that you can undo anaccidental deletion, but only if you have not performed any other actionthat makes "undoing" an object deletion impossible. Microsoft Access canundo commands only one level back; it cannot queue up multiple commands toundo.

Because the physical deletion of the object occurs when you perform thenext action rather than at the moment you choose the Delete command, yourcomputer may appear to stop responding (hang) while it performs the deleteoperation. If the object is large enough, the deletion may take some time.

NOTE: If you restart your computer before the deletion is complete, thehidden temporary object remains in the database, wasting space. To removehidden objects such as this, compact the database.

Speed of Deletion

The time it takes to delete an object depends on how large it is and howfast the computer is that you are using. Smaller objects are deletedfaster than larger ones. If the database that contains the object to bedeleted is on a network file server, the deletion will take longer.

How long an object deletion will take cannot be accurately predictedbecause the speed of deleting the object is also affected by the nature ofthe data contained in it. (For example, with tables, number columns aredeleted more quickly than Memo and OLE columns.)

Internally, Microsoft Access does not provide a status callback for objectdeletion; therefore, a progress indicator in the status bar is notpossible. Because there is no progress indicator, Microsoft Access doesnot yield to the system until the object deletion procedure is complete.Therefore, you cannot abort the operation or switch to another applicationwhile the object is being deleted.
For more information about the Undo option, search on the word "undo"using the Microsoft Access Help Index, or ask the Microsoft Access 97Office Assistant.

Article ID: 90129 - Last Review: 12/04/2015 09:18:37 - Revision: 3.1

Microsoft Access 1.0 Standard Edition, Microsoft Access 1.1 Standard Edition, Microsoft Access 2.0 Standard Edition, Microsoft Access 95 Standard Edition, Microsoft Access 97 Standard Edition

  • kbnosurvey kbarchive kbinfo kbusage KB90129