Oracleでカーソル長を取得する方法
Oracleでは、%ROWCOUNT擬似列を使用してカーソルの長さを取得することができます。
- カーソル変数を宣言する。
DECLARE
CURSOR cursor_name IS
SELECT column1, column2, ... FROM table_name;
v_count INTEGER;
BEGIN
-- 其他代码
END;
- カーソルを実行する。
OPEN cursor_name;
- カーソルの長さを取得する。
FETCH cursor_name INTO variable_name;
v_count := cursor_name%ROWCOUNT;
%ROWCOUNT 疑似列は、直近に実行された SELECT ステートメントの影響を受けた行数を返します。ただし、%ROWCOUNT の値は、FETCH ステートメントが実行されたときだけ更新されます。
- カーソルを閉じます。
CLOSE cursor_name;
以上のステップを完了すると、変数v_countにカーソルの長さが格納されています。