2 つのカーソルを開くプロシージャを作成しており、それぞれに対して何らかのロジックを実行する必要がありますが、no_data_found
. 私がそれを処理していない場合、フェッチは null 値を挿入し、例外をスローすると、2 番目の部分を無視します。
コード:
create or replace procedure pro_name(param1,param2....)
as
var1
var2
TYPE cur_typ IS REF CURSOR;
c cur_typ;
etc...
begin
sql_str := 'select from ' || param1 || 'where some_cond..';
open c for sql_str;
loop
fetch c into v1, v2 , v3;
DO STUFF...
end loop;
commit;
-- go all over again with different table
sql_str2 := 'select from ' || param2 || 'where some_cond..';
open c2 for sql_str2;
loop
fetch c into v1a, v2a , v3a;
DO STUFF...
end loop;
commit;
end;
エラー処理はどこに配置すればよいですか?