OracleではSQLの発行時、select文に”for update”と付けることによって 抽出したデータを行単位でロックすることができます。 select * from TBL where col_1 = 'A' and col_2 = 'B' for update なお、ロック後に該当の行に対して別のセッションからアクセス(更新処理)された場合、 基本的にそのセッションではロックをかけた側のセッションでロックが解除されるまで待機されますが、 これを待機ではなく強制的にエラーにする方法もあります。 select * from TBL where col_1 = 'A' and col_2 = 'B' for update nowait; それが"NOWAIT"。 上記のように末尾に"nowait"と付けることで、セッションを待機ではなく即時エラーにすることが可能です。 ですが、ここで1