Microsoft KB Archive/826760

= Incorrect object dependencies information appears for database objects in a read-only database =

Article ID: 826760

Article Last Modified on 3/29/2007

-

APPLIES TO


 * Microsoft Office Access 2003

-



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

Novice: Requires knowledge of the user interface on single-user computers.



SYMPTOMS
When you open an Access database as read-only, and then you try to view the object dependencies for database objects (such as a table), the incorrect object dependencies may be listed.



CAUSE
Access builds the dependency list based on name maps. This problem occurs when the database object has been recently renamed, and the name change has not been updated. By default, if the database is opened as read-only, the Track name AutoCorrect info feature and the Perform name AutoCorrect feature are not available. You cannot make these features available.



WORKAROUND
To work around the problem, open the database in read mode or in write mode. If the Perform name AutoCorrect feature is not enabled, follow these steps to enable this feature:
 * 1) On the Tools menu in the Database window, click Options.
 * 2) In the Options dialog box, click the General tab, and then click to select the Track name AutoCorrect info check box.
 * 3) Click to select the Perform name AutoCorrect check box.
 * 4) Click Apply, and then click OK.
 * 5) On the File menu, click Close.
 * 6) Open the database again in read mode or in write mode.



STATUS
This behavior is by design.



MORE INFORMATION
Track name AutoCorrect info is a feature that was introduced in Microsoft Access 2000. When the Track name AutoCorrect info feature is made available for the database, Access creates the name map for each database object, and then keeps track of name changes. However, this feature does not perform any corrections.

To make name changes throughout the database, the Perform name AutoCorrect feature must be made available. When you open an object, Access checks to see if a name change must be applied to that object or to its contents. If a change has occurred, Access makes the required name change automatically.

For the Perform name AutoCorrect feature to work correctly, the object that has the name change made to it must have a name map that is associated with it. If the object does not have a name map, the Perform name AutoCorrect feature cannot repair the name change for the object even though the Perform name AutoCorrect feature is enabled to track and to perform the name change.

Steps to Reproduce the Problem
Caution If you follow the steps in this example, you modify the sample database Northwind.mdb. You may want to back up the Northwind.mdb file and follow these steps on a copy of the database.  Start Access. Open the Northwind.mdb database in read mode or in write mode. In the Database window in the Objects section, click Tables. View the Object Dependencies of the Suppliers table. To do this, follow these steps:  Right-click the Suppliers table, and then click Object Dependencies.</li> In the Object Dependencies pane for the table, view the list of database objects with the following criteria: <ul> Objects that depend on me</li> Objects that I depend on</li></ul> </li></ol> </li> Rename the Suppliers table to Suppliers1 .</li> Close the Northwind.mdb database.</li> Open the Northwind.mdb database as read-only. To do this, follow these steps: <ol style="list-style-type: lower-alpha;"> Start Access.</li> On the File menu, click Open.</li> In the Open dialog box, select the database that you want.</li> On the Open button, click the down arrow, and then select Open Read-Only.</li></ol> </li> In the Database window under Objects, click Tables.</li> View the Object Dependencies of the Suppliers1 table. To do this, follow these steps: <ol style="list-style-type: lower-alpha;"> Right-click the Suppliers1 table, and then click Object Dependencies.</li> In the Object Dependencies pane for the table, view the list of database objects with the following criteria: <ul> Objects that depend on me</li> Objects that I depend on

Notice that the database objects that are listed in the Object Dependencies pane are incorrect.</li></ul> </li></ol> </li> <li>In the Database window under the Objects section, click Forms.</li> <li>In the right pane, double-click Suppliers.

Notice that when you try to open the Suppliers form, the form does not open, and you receive the following error message:

The record source 'Suppliers' specified on this form or report does not exist.

You misspelled the name, or it was deleted or renamed in the current database, or it exists in a different database.

In the Form or Reports Design view, display the property sheet by clicking the Properties button, and then set the RecordSource property to an existing table or query.

Note You receive this error message when the name changes are not made. The database object is still dependent on the previous object dependencies.</li></ol>

<div class="references_section">