Saturday, October 15, 2005

Read-Only Access Databases

Problem: There doesn't seem to be a good way to allow some people to update Access Databases and others to only read the same databases. The locking file becomes a major obstacle. Microsoft suggests that we instruct the read-only people to just open the database in read-only mode. ....... :o) ...... Yeah, like that's going to happen. They have other solutions, though, like go into the file properties and make the database read-only; not a good solution either (then I can't update it either). And the topper: control access with that nice user-level security feature they have in Access. Even Microsoft says this "can be a daunting task". No thanks, I'd rather spend the weekend in traction. Anyhow, a colleague found a way to do this; it might seem a little cumbersome, but it's better than any of the above....

Solution: Make a replica of the database (Tools/Replication), and store the replicated file in a separate directory. The original copy of the database becomes the "Design Master". The Replica can be updated as well as the Design Master, under normal circumstances. But the point of this solution is to make the replica read-only to some people but also allow others to update the data. To do this, set NTFS permissions on the separate directory allowing the updaters full control and the rest of the users read-only. At the same time, set NTFS permissions on the design master giving the updaters full control and no one else any access. The updaters can continue using the design master for updating the database; after each update they can synchronize with the replica (again, Tools/Replication/Synchronize..... ). The non-updaters view the data using only the replica. Easy as cake.

Thanks, George!