Reputation: 9546
I have two Access databases: Main
stores most of my data and Memos
stores data of datatype Memo. I am storing the memos in a separate db because everything I read about Memo fields said they were prone to corruption and that the only safe way to protect your database is to have the memos in a separate linked db.
Memos
has a table Info
with fields:
ID
(type Autonumber primary key)
Info
(type Memo)
Main
has a table Content
with fields:
ID
(type Autonumber primary key)
infoID
(type Number)
entryDate
(type Date/Time)
I want to enforce referential integrity on Content
so that it can only accept values that are valid IDs from table Info
. But I can't, because Memos
is a linked database. I can establish controls at another point in the data entry process to ensure that only values from Info
can be inserted into Content
, but I'd rather not code the validation if there's a way to enforce it through database constraints.
Is there another way to enforce integrity between linked tables that I'm not aware of, or a different way to handle the Memo storage problem so that I can keep the Memos in the same DB?
Upvotes: 2
Views: 3027
Reputation: 15384
No, there is no way to enforce referential integrity between tables in different databases.
IMHO, the best solution is to setup up an MS SQL database back-end, and set up referential integrity within that DB. In general, it is more robust than MS Access in your situation (flaky network). You might be able to get away with an SQL Server Express version.
Upvotes: 2