問題

11
SQL

FOR UPDATE

SQLの問題に挑戦しよう!

問題

FOR UPDATE

行ロックを取得してください。

解答と解説(FOR UPDATE)

解説

LINE登録して解答を見る

※ご登録後トークルーム下部にあるメニュー内
「無料問題集※解答付き」を押すと
解答閲覧用URLが届きます

FOR UPDATEは選択した行に対して排他ロックを取得する構文です。トランザクション内で使用することで、他のセッションからの同時更新を防ぐことができます。金融処理や在庫管理など、同時実行によるデータ不整合を防ぐ必要がある場面で重要です。ロックを取得した行はCOMMITまたはROLLBACKまで他のトランザクションから変更できません。ただしロックの多用はデッドロックの原因となるため、使用範囲を最小限にする設計が求められます。

補足

ロックは競合制御に有効ですが、取得順序が不適切だとデッドロックが発生します。トランザクション設計時はロック順序を統一することが重要です。

さらにスキルアップしたい方は公式LINEから「SQL」と送信すると動画が見れます。

LINE登録して動画を視聴する
あなたに合った学習プランは?LINE適正コース診断はこちら