カーソルからデータを取り出します。
Synopsis
FETCH cursor-name [INTO host-variable-list]
埋め込み SQL アプリケーション内で、FETCH 文は
カーソル からデータを取り出します。
SQL 文として埋め込み SQL からだけサポートされています。同様の操作は、ODBC でも ODBC API を使用してサポートされます。
INTO 句は、ローカル変数内に配置されるフェッチの列からデータを配置します。リスト内の各変数は左から右に、カーソル結果セット内で対応する列に関連しています。各変数のデータ型は、結果セット列に対応するデータ型の暗黙の変換に一致する、またはサポートされる必要があります。変数の数は、カーソル選択リスト内の列数と一致しなければなりません。
FETCH オペレーションは %ROWCOUNT ローカル変数を、取り出される行の数に設定します。
以下の例は、EmpCursor という名前のカーソルからデータを検索する FETCH 文を示しています。
&sql(DECLARE EmpCursor CURSOR FOR SELECT EmpId,ForeName,SurName
INTO :empid,:fname,:sname FROM Employees)
&sql(OPEN EmpCursor)
&sql(FETCH EmpCursor)
&sql(CLOSE EmpCursor)
以下の例は、INTO 句を持つ FETCH 文を示しています。
&sql(DECLARE EmpCur CURSOR FOR
SELECT SurName,Telephone
FROM Employees WHERE SurName="Johnson")
&sql(OPEN EmpCur)
&sql(FETCH EmpCur INTO :name, :tel)
以下の例は、DECLARE に対応する INTO 句をオーバーライドする、INTO 句を持つ FETCH 文を示しています。
&sql(DECLARE EmpCur CURSOR FOR
SELECT SurName,Telephone INTO :name,:tel
FROM Employees WHERE SurName="Johnson")
&sql(OPEN EmpCur)
&sql(FETCH EmpCur INTO :n1, :t1)