Hello.
I have experoenced the same problem. It seems to be
common problem with Access connectiong to ODBC data source. It seems that Access
has some problems to determine primary key...
You should not use textual fields as primary key.
Insted, add some bigserial (integer autoincrement field) into your tables
and make such field primary key. Then relink your tables. This will solve your
problem. Also, it is good to add timestamp field into tables.
Also, be aware that your tables names should not be
too long, because if they are long you will have problems with relinking. Access
would not relink correctly (preassuming that you will use DSN-less and relinking
on each startup).
Bye.
Zlatko
For your information, this is explanation from
MSDN:
"
ACC: "#Deleted" Errors with Linked ODBC Tables
This article was previously published under Q128809
SYMPTOMSWhen you retrieve, insert, or update records in a linked ODBC
table, each field in a record contains the "#Deleted" error message. When you
retrieve, insert, or update records using code, you receive the error message
"Record is deleted."
CAUSEThe Microsoft Jet database engine is designed around a
keyset-driven model. This means that data is retrieved, inserted, and updated
based on key values (in the case of a linked ODBC table, the unique index of a
table).
After Microsoft Access performs an insert or an update of a linked ODBC table, it uses a Where criteria to select the record again to verify the insert or update. The Where criteria is based on the unique index. Although numerous factors can cause the select not to return any records, most often the cause is that the key value Microsoft Access has cached is not the same as the actual key value on the ODBC table. Other possible causes are as follows:
Microsoft Access uses a similar process to retrieve records from an linked ODBC table. First, it retrieves the key values and then the rest of the fields that match the key values. If Microsoft Access is not able to find that value again when it tries to find the rest of the record, it assumes that the record is deleted. RESOLUTIONThe following are some strategies that you can use to avoid
this behavior:
MORE INFORMATIONNote: In Microsoft Access 2.0, linked tables were called
attached tables.
Steps to Reproduce Behavior
|