私は以下のオラクルの仕事をしています。
dbms_scheduler.create_job
(job_name => m_job_name,
job_type => 'PLSQL_BLOCK',
job_action => 'begin Pkg_Shell.PR_WF_PROC('
|| p_seq_request
|| '); end;',
number_of_arguments => 0,
start_date => sysdate,
repeat_interval => null,
end_date => null,
job_class => 'DEFAULT_JOB_CLASS',
enabled => false,
auto_drop => true,
comments => null
);
上記のジョブは自動的にドロップされません。このジョブは 1 回だけ実行されます。色々サイト見たらそう書いてあった
For auto drop,This flag if TRUE, causes a job to be automatically dropped after it has completed or has been automatically disabled. A job is considered completed if:
1.Its end date (or the end date of the job schedule) has passed.
2.It has run max_runs number of times. max_runs must be set with SET_ATTRIBUTE.
3.It is not a repeating job and has run once.
私のジョブは一度だけ実行されます。特定のシナリオでジョブが自動ドロップされないのはなぜですか。? ドロップされていない場合は見つかりませんでした。これを克服するには、sysdate + 2時間のようにend_dateに言及したい場合、どのように言及しますか? max_runs または max_fails を設定したい場合、仕事でそれを使用する方法。? これら2つの設定または上記の誰かが私の問題を解決するかどうか?