即効テクニック |
マルチユーザー環境では競合によるアクシデントに注意しなくてはなりません。 データベースを「排他モード」に設定する方法もありますが、データレベルでの編集の競合を避ける手段の1つとして、Accessには「レコードロック」という機能が用意されています。 この機能は、すべてのレコード、または編集中のレコードのみをロックすることができます。 ロックした場合は、レコードを編集中にほかのユーザーがそのレコードを変更しようとすると警告されます。 ●手順●●補足説明●
- データベースを開いて、[ツール(T)]メニューの[オプション(O)]をクリックします。
- [詳細]タブをクリックします。
- [既定の開くモード]で[共有モード(S)]を選択します。
- [既定のレコードロック]で、[すべてのレコード(L)]もしくは[編集済みレコード(D)]を選択します。
- [レコードレベルでロックして開く(O)]をチェックして、[OK]ボタンをクリックします。
- [既定の開くモード]の[共有モード(S)]は、同時に複数のユーザーが操作・編集できるモードで、[排他モード(E)]は同時には操作・編集できないモードです。
- [既定のレコードロック]の[すべてのレコード(L)]は、基になるテーブルのすべてのレコードはロックされます。他のユーザーはレコードを読み取ることはできますが、レコードを編集、追加、または削除することはできません。 [編集済みレコード(D)]は、対象がフォームとクエリの場合だけ有効です。レコードのページは、ユーザーがレコード内のフィールドの編集を開始すると同時にロックされ、ユーザーがそのレコードを保存するまでロックされたままになります。したがって、レコードを編集できるのは、一度に1人のユーザーだけです。これを"排他的"ロック状態とも呼びます。