次の方法で共有


CDaoRecordset::SetLockingMode

更新 : 2007 年 11 月

レコードセットのロックの型を設定します。

void SetLockingMode(
   BOOL bPessimistic 
);

パラメータ

  • bPessimistic
    ロックの型を示すフラグ。

解説

排他ロックが有効なときは、Edit メンバ関数を呼び出すと同時に編集しているレコードを含む 2K ページがロックされます。Update メンバ関数または Close メンバ関数、または移動操作、検索操作の 1 つが呼び出されると、ページのロックは解除されます。

共有ロックが有効なときは、Update メンバ関数を使用してレコードを更新する間だけ、そのレコードを含めた 2K ページがロックされます。

ページがロックされていると、ほかのユーザーは同じページにあるレコードを編集できません。0 以外の値を渡して、SetLockingMode を呼び出したときに、ほかのユーザーが既にそのページをロックしていると、Edit の呼び出しに対して例外がスローされます。ほかのユーザーは、ロックされたページからデータを読むことができます。

0 を渡して SetLockingMode を呼び出し、その後ページがほかのユーザーによりロックされているときに Update を呼び出すと、例外が発生します。ほかのユーザーがレコードに行った変更を知るには (自分の行った変更は失われます)、現在のレコードのブックマーク値を指定して SetBookmark メンバ関数を呼び出します。

ODBC データ ソースで作業をしているときは、ロックモードは常に共有ロックになります。

必要条件

ヘッダー : afxdao.h

参照

参照

CDaoRecordset クラス

階層図

CDaoRecordset::GetLockingMode

その他の技術情報

CDaoRecordset のメンバ