dbms_jobsを使用していくつかのプロシージャを並行して実行しようとしていますが、実行に問題があります。以下のコードを実行しようとすると、このエラーが発生します
20:28:16 Info: Job #16 could not be executed. ORA-12011: execution of 1 jobs failed
ORA-06512: at "SYS.DBMS_IJOB", line 469
ORA-06512: at "SYS.DBMS_JOB", line 282
ORA-06512: at line 1
declare
ln_dummy number;
p_stdate CONSTANT DATE := '01-MAY-2012';
p_edate CONSTANT DATE := '31-MAY-2012';
p_cdate CONSTANT DATE := '09-FEB-2013';
p_key CONSTANT INTEGER:= 0;
p_ercode INTEGER;
p_erdesc VARCHAR2(200);
begin
COMMIT;
DBMS_JOB.SUBMIT(ln_dummy,'MY_PROC_1('''|| p_stdate ||''','''|| p_edate ||''','''|| p_cdate||''','''|| p_key ||''', :p_ercode, :p_erdesc: );');
COMMIT;
end;
/
p_ercodeおよびp_erdescは、MY_PROC_1のoutパラメーターです。コメントアウトしようとすると、ジョブは問題なく実行されます。
私の質問は、MY_PROC_1のp_ercodeとp_erdescをコメントアウトせずにジョブを実行するにはどうすればよいですか。
また、どのジョブが実行されており、どのジョブがすでに実行されているかを知る方法はありますか?アラートのようなものですか?