Home > Software design >  getting error 3197 when deleting from MsAcces table linked to CACHE
getting error 3197 when deleting from MsAcces table linked to CACHE

Time:02-24

I have a MsAccess db (Microsoft® Access® for Microsoft 365 MSO (Version 2201 Build 16.0.14827.20186) 64-bit ) that is linked with CACHE via an ODBC-driver. It is installed on my harddrive, so no other users can be interrupting anything.

I have to delete records in a table. I am doing this via a filtered recordset.

It worked fine, but now I get an error: "The Microsoft Access database engine stopped the process because you and another user are attempting to change the same data at the same time."

  • relinked the table

  • refreshed the table

  • reconfigured the ODBC-driver

  • repaired and compacted the database

  • imported all the tables into a new database

  • in an older version same of the db (that worked) I now have the same issue

  • delete query works

  • delete via a recordset doesn't work

  • delete manually, selecting the record and pushing the delete button doesn't work

Any ideas, I'm out of options ... .

CodePudding user response:

not quite sure about your specific problem here. Especially since you´re not able to delete it manually and a bit missing info, like

  • is older version of the same db also run via ODBC
  • is the aforementioned error occuring in both failed cases.

But I solved the multiple users access same data problem in most cases by checking my code with regard to the following:

  • open recordsets that are not closed before the delete command.
    Set rst = dbs.OpenRecordset(stringSQL)
    ...
    rst.close
    set rst = nothing
    
  • opened forms or subforms that need to be saved/closed before delete command
  • use the right type of recordset(RecordsetTypeEnum)

surely that list is not complete, but that´s what I can think of atm.

  • Related