PL/SQL カーソルFORループ
■PL/SQLのカーソルFORループ文について解説する
・基本構文
set serveroutput on
DECLARE
CURSOR <カーソル名> IS <SELECT文>;
BEGIN
FOR <任意の変数> IN <カーソル名> LOOP
<処理文>
END LOOP;
/
END;
/
例)TESTテーブルを全件取得して、カラム「ID」と「NAME」の値を半角スペースで連結
DECLARE
-- TESTテーブルの全件をカーソル名「CUR」で宣言
CURSOR CUR IS SELECT * FROM TEST;
BEGIN
-- カーソル「CUR」を1レコードずつ、変数「RESULT」にセットしてループ処理
FOR RESULT IN CUR LOOP
-- TESTテーブルのカラム「ID」と「NAME」の値を半角スペースで連結(||' '||)
DBMS_OUTPUT.PUT_LINE(RESULT.ID ||' '||RESULT.NAME);
END LOOP;
END;
/