カーソルでのデータ取得方法

カーソルが開かれると、データベースからデータを取得するために使用することができます。それには FETCH 文を使用します。FETCH 文により、OPEN 文によって作られた結果セットから次の行を取得し、返されたデータを指定されたホスト変数 (または、SQLDA 構造体で指定されたアドレス) に書き込みます。次に例を示します。

     perform until sqlcode not = 0  
         EXEC SQL
            FETCH Cur1 INTO :first_name
         END-EXEC
         display 'First name: ' fname
         display 'Last name : ' lname
         display spaces
     end-perform

カーソルが結果セットの終端に達すると、SQLCA データ構造体の SQLCODE に 100 という値が返され、SQLSTATE には "02000" がセットされます。

カーソルからデータをフェッチする際、データが選択されているテーブルにロックを適用できます。

COBSQL

ORACLE プリコンパイラ指令 MODE は、データが見つからない場合に SQLCODE に格納される値に影響を与えます。MODE プリコンパイラ指令の使用方法に関する詳細については、『ORACLE プリコンパイラ プログラマーズ ガイド』を参照してください。