Oracle CURSOR FOR UPDATE (日本語)

概要:このチュートリアルでは、Oracle更新可能カーソルを使用してテーブル内のデータを更新する方法を学習します。

更新用のOracleカーソルの概要

プログラムで行を更新する前に、行のセットをロックしたい場合があります。 Oracleは、この種のロックメカニズムを実行するために、更新可能なカーソルにSELECTステートメントのFOR UPDATE句を提供します。

更新可能なカーソルを宣言するための構文は次のとおりです。

ここでの新しい構文はFOR UPDATEキーワードです。

カーソルを開くと、OracleはSELECT ... FOR UPDATEステートメントで選択されたすべての行をFROM句。そして、これらの行は、カーソルが閉じられるか、トランザクションがCOMMITまたはROLLBACKで完了するまでロックされたままになります。

Oracleは、更新中にSELECT ... FOR UPDATEによって返されるすべての行をロックするため、必要な行のみを選択するにはWHERE句が必要です。

更新する特定の列がある場合は、次のようにFOR UPDATE句にリストできます。

この場合、Oracleは、FOR UPDATE OF句にリストされている列名を持つテーブルの行のみをロックします。

FOR UPDATE句のみを使用し、OFキーワードの後に1つ以上の列を含めない場合、Oracleはその場合に注意します。 FROM句にリストされているすべてのテーブルで選択したすべての行をロックします。

Oracle Cursor FORUPDATEの例

次のことを考慮してください。例。

仕組み。

  • 最初に、クレジットがゼロより大きい顧客のクレジットを更新する更新可能なカーソルを宣言します。
  • 次へ、カーソルの行をループします。
  • 次に、各顧客の注文数を取得します。
  • その後、注文数に基づいてクレジットの増分を割り当てます。
  • 最後に、顧客のクレジットを更新します。

このチュートリアルでは、Oracleの更新可能なカーソルを使用してテーブルのデータを更新する方法を学習しました。

  • このチュートリアルは役に立ちましたか?
  • はいいいえ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です