リファレンスガイド> TDV SQLスクリプト> SQLスクリプトステートメントリファレンス> FETCH
 
FETCH
FETCHステートメントはSQLスクリプトで使用され、開いているカーソルから1行を読み取ります。
構文
FETCH <cursor> INTO <varList>
 
変数リストは、変数のリスト(射影の数と同じ数)または適切なスキーマを持つROW変数にすることができます。 ROWの詳細については、型変数のカーソルの宣言を参照してください。
備考
<varList>は、SELECTINTO句のように機能します。 (SELECT INTOを参照してください。)
開いていないカーソルからフェッチすることは違法です。
最後の行を超えてフェッチしてもエラーは発生しません。変数は変更されず、FOUND属性はFALSEに設定されます。詳細については、カーソルの属性を参照してください。
フェッチの方向をNEXTまたはFIRSTに指定できます。これらの単語は、次のようにキーワードFROMと一緒に使用する必要があります。
FETCH NEXT FROM x INTO i;
FETCH FIRST FROM x INTO i;
 
フェッチ方向が指定されていない場合、NEXTがデフォルトです。
方向がNEXTの場合、フェッチは通常どおりに動作します。つまり、現在の行のデータをターゲット変数にフェッチします。
方向としてFIRSTが指定されている場合、カーソルはSCROLLカーソルである必要があります。そうでない場合、エラーが発生します。 型変数のカーソルの宣言を参照してください。
指定された方向がFIRSTの場合、カーソルは最初の行に再配置され、最初の行のデータがターゲット変数に配置されます。
エラー
次の表に、FETCHステートメントの実行中に発生する可能性のあるエラーを示します。
エラーメッセージ
原因
初期化されていないカーソル
カーソル変数が使用されますが、フェッチ時に初期化されません。
カーソルが開いていません
フェッチが試行されたときにカーソルが閉じられました。