IT用語集 › データベース › 楽観的並行性制御
競合はまれだと仮定し、誰にでも書き込ませ、コミット時に競合を検出して再試行する方式。
実装はバージョン列(更新のたびに増やす)で行う。UPDATE文に WHERE version = ? を付け、失敗すれば誰かが先に更新したことになる。事前に行をロックする悲観的ロックとは対照的である。同時書き込みの少ないWebアプリに向いている。HTTPのETagも同じ原理で動く。
WHERE version = ?