HOME > 即効テクニック > Access一般機能 > データベース・データ保護 > マルチユーザー環境で特定のレコードをロックする

即効テクニック

データベース・データ保護

マルチユーザー環境で特定のレコードをロックする

(Access 2000)
マルチユーザー環境では競合によるアクシデントに注意しなくてはなりません。
データベースを「排他モード」に設定する方法もありますが、データレベルでの編集の競合を避ける手段の1つとして、Accessには「レコードロック」という機能が用意されています。

この機能は、すべてのレコード、または編集中のレコードのみをロックすることができます。
ロックした場合は、レコードを編集中にほかのユーザーがそのレコードを変更しようとすると警告されます。

●手順●
  1. データベースを開いて、[ツール(T)]メニューの[オプション(O)]をクリックします。
  2. [詳細]タブをクリックします。
  3. [既定の開くモード]で[共有モード(S)]を選択します。
  4. [既定のレコードロック]で、[すべてのレコード(L)]もしくは[編集済みレコード(D)]を選択します。
  5. [レコードレベルでロックして開く(O)]をチェックして、[OK]ボタンをクリックします。 オプションダイアログ[詳細]タブの設定
●補足説明●
  1. [既定の開くモード]の[共有モード(S)]は、同時に複数のユーザーが操作・編集できるモードで、[排他モード(E)]は同時には操作・編集できないモードです。
  2. [既定のレコードロック]の[すべてのレコード(L)]は、基になるテーブルのすべてのレコードはロックされます。他のユーザーはレコードを読み取ることはできますが、レコードを編集、追加、または削除することはできません。 [編集済みレコード(D)]は、対象がフォームとクエリの場合だけ有効です。レコードのページは、ユーザーがレコード内のフィールドの編集を開始すると同時にロックされ、ユーザーがそのレコードを保存するまでロックされたままになります。したがって、レコードを編集できるのは、一度に1人のユーザーだけです。これを"排他的"ロック状態とも呼びます。