ACC97: Can't Update Recordset After Refreshing Linked Table

Last reviewed: May 14, 1997
Article ID: Q165352
The information in this article applies to:
  • Microsoft Access 97

SYMPTOMS

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

After you refresh the link to a linked table using the Linked Table Manager Wizard, you cannot update data in a form based on that table the first time you open it. You receive a message that you cannot update the data.

RESOLUTION

This behavior only occurs if:

  • You use the Linked Table Manager to refresh the link to a linked table.
  • You open a form based on the linked table that has its RecordsetType property set to Snapshot.
  • You open another recordset based on the same table using a form or Visual Basic code and try to add or update a record.

To resolve this problem, close all recordsets based on the table, and then reopen them. For example, close the form with the snapshot-type recordset, close the form with which you are trying to update the recordset, and then reopen them both.

STATUS

Microsoft has confirmed this to be a problem in Microsoft Access 97. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

If you try to update data using a form, you receive the message:

   This Recordset is not updatable.

If you try to update data using Visual Basic code, you receive the message:

   Run-time error '3027':
   Can't update. Database or object is read-only.

This problem occurs the first time you open the form with the snapshot-type recordset and try to update the recordset while the form is open. This includes updating the table directly or using a form or Visual Basic code. Even if you have previously edited the data or if you quit and restart Microsoft Access, the first time you open the snapshot-type form this behavior is exhibited.

Steps to Reproduce Problem

  1. Start Microsoft Access and create a new database named TestUpdate.mdb.

  2. On the File menu, point to Get External Data, and then click Link Tables.

  3. In the Link dialog box, locate and select the sample database Northwind.mdb, and then click Link.

  4. In the Link Tables dialog box, select the Customers table, and then click OK.

  5. Create a new form based on the linked Customers table using the AutoForm: Columnar Wizard.

  6. Switch the form to Design view.

  7. Set the form's RecordsetType property to Snapshot.

  8. Save the form as frmReadOnly, and then close it.

  9. Use the AutoForm: Columnar Wizard to create another new form based on the Customers table.

  10. Save the form as frmUpdate, and then close it.

  11. On the Tools menu, point to Add-Ins, and then click Linked Table

        Manager.
    

  12. In the Linked Table Manager dialog box, click to select the check box

        next to the Customers table, and then click OK.
    

  13. Click OK when you receive the message that the table was successfully

        refreshed, and then click Close in the Linked Table Manager dialog box.
    

  14. Open the frmUpdate form, change some data, and then close the form.

  15. Open the frmReadOnly form, and then minimize it.

  16. Open the frmUpdate form again and try to update a record. Note that you

        receive the message "This Recordset is not updatable." If you close
        both forms and reopen them, you will be able to update data using the
        frmUpdate form.
    

REFERENCES

For more information about Snapshot-type recordsets, search the Help Index for "snapshot-type Recordset objects."


Additional reference words: attach attached
Keywords : IntpOthr IsmProb kberrmsg
Version : 97
Platform : WINDOWS
Hardware : x86
Issue type : kbbug
Resolution Type : kbworkaround


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: May 14, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.