ロック処理最終更新日: 2021年5月20日

楽観ロック

すべてのデータ(レコード)に「バージョン」カラムが備わっています。

更新画面を開いたとき、同項目の値を読み込みます。更新処理時に再び値を読み込み、最初に読み込んだ値と変わっていなければ更新を成功させます。

特徴

同じデータの更新画面を、同時に複数の利用者が開くことができます。最初の更新者のみが書き込みに成功します。それ以外の更新はすべて失敗します。

書き込みの競合

いったん更新画面をキャンセルし、再び更新画面に入り直す必要があります。修正途中のデータは無効になります。

競合時の対応

競合が発生して更新が失敗した場合でも、画面上には入力データが残っているため、利用者の方で復旧処理を工夫することはできます。例えば、入力済みの値をテキストエディタなどに一時コピーし、再び更新処理を行うといったことが考えられます。