カーソルに取り出された行数の判別
cursor_rowCount スカラー関数を使用すると、カーソルに関連した行の数を効率的に判別することができます。 この関数はカーソル変数をパラメーターとして取り、カーソルのオープン時から現在までに取り出された行数を示す整数値を出力として戻します。
始める前に
- カーソル・データ・タイプが作成されている必要があります。
- カーソル・データ・タイプのカーソル変数が宣言されている必要があります。
- カーソルを参照する OPEN ステートメントが実行済みでなければなりません。
このタスクについて
制約事項
cursor_rowCount 関数は SQL PL コンテキストでのみ使用可能です。
手順
タスクの結果
例
connect to sample %
set serveroutput on %
create or replace procedure rowcount_test()
language sql
begin
declare rows_fetched bigint;
declare Designers cursor;
declare first anchor to employee.firstnme;
declare last anchor to employee.lastname;
set Designers = cursor for select firstnme, lastname
from employee where job = 'DESIGNER' order by empno asc;
open Designers;
fetch Designers into first, last;
call dbms_output.put_line(last || ', ' || first);
fetch Designers into first, last;
call dbms_output.put_line(last || ', ' || first);
set rows_fetched = CURSOR_ROWCOUNT(Designers);
call dbms_output.put_line(rows_fetched || ' rows fetched.');
close Designers;
end %
call rowcount_test() %
connect reset %
terminate %