|
Error:
-
|
Microsoft OLE DB Provider for ODBC
Drivers error '80004005'
[Microsoft][ODBC Microsoft Access
Driver] Operation must use an updateable query. /tablename_edit.asp,
line xxx
|
Solution:
Scenario1: Testing on the
Web Server
If you are testing the program at web-server, your web hosting
provider should have a designated folder for databases where correct
permissions are already set. You need to move database file to that
directory and update connection string accordingly.
Example:
Let's say you have the following directory structure on you web server:
cgi-bin
database
logs
www/asp/db
Where:
database - designated database folder
www/asp - folder where ASP files reside
www/asp/db - folder where database file resides
Old connection string should look like this:
strConnection =
"Provider=MSDataShape;DBQ=" & server.mappath("db\db1.mdb")
& ";Driver={Microsoft Access Driver
(*.mdb)};DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;"
New connection string in this example will be:
strConnection =
"Provider=MSDataShape;DBQ=" & server.mappath("..\..\database\db1.mdb")
& ";Driver={Microsoft Access Driver
(*.mdb)};DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;"
Scenario2:
Testing Locally
If you are testing locally and received the above described error,
that usually means that there is a permission problem. To fix that,
you need to give full permission to EVERYONE
to the directory where database is located. To do that ,you need to:
-
Right-click on the folder where the database is located
-
Go to Properties
-
Go to Security
-
Add user named EVERYONE (if
don't exists)
-
Assign Full Permissions for user EVERYONE
-
Click OK

For Windows XP users only:
If permission tab is not enabled or missing or sharing tab does not
allow to grant the permission, you need to do the following:

-
Click OK
-
Now you can right-click on the folder where the database is located
-
Go to Properties
-
Go to Security
-
Add user named EVERYONE (if
don't exists)
-
Assign Full Permissions for user EVERYONE
-
Click OK
|