ODBC Microsoft Access 97 Driver] Operation must use an updateable query.

Published by

Posted on February 09, 2008

You may encounter the following common error when you use ActiveX Data Objects (ADO) with Active Server Pages (ASP):
Microsoft OLE DB Provider for ODBC Drivers error ‘80004005’
[Microsoft][ODBC Microsoft Access 97 Driver] Operation must use an updateable query.

This error is typically encountered when your script attempts to perform an UPDATE or some other action that alters the information in the database. This error occurs because ADO is unable to write to the database for one of the following reasons:

1. The most common reason is that the Internet Guest account (IUSR_MACHINE), which is by default part of the “Everyone” group, does not have Write permissions on the database file (.mdb). To fix this problem, use the Security tab in Explorer to adjust the properties for this file so that the Internet Guest account has the correct permissions.

NOTE: When using Microsoft Access databases with ADO, it is also necessary to give the Internet Guest account Write permissions on the directory containing the .mdb file. This is because Jet creates an .ldb file to handle database locking. You may also need to give read/write permission on the “Temp” folder because Jet may create temporary files in this directory.

Just to add to this solution. if your page is located within a password protected folder. you must give the User group write and read access to the db folder also. M$ miss this point


Reference : http://support.microsoft.com/kb/175168