beginsys.dbms_job.submit(job => :job,what => 'proc_test;',ne
来源:学生作业帮 编辑:百度作业网作业帮 分类:英语作业 时间:2024/07/19 02:38:27
begin
sys.dbms_job.submit(job => :job,
what => 'proc_test;',
next_date => sysdate,
interval => 'trunc(sysdate)+1/1440');
commit;
end;
ORA-23420:间隔必须以将来的一个时间作评估
ORA-06512:在 "SYS.DBMS_JOB",line 57
ORA-06512:在 "SYS.DBMS_JOB",line 134
ORA-06512:在 line 3
job
sys.dbms_job.submit(job => :job,
what => 'proc_test;',
next_date => sysdate,
interval => 'trunc(sysdate)+1/1440');
commit;
end;
ORA-23420:间隔必须以将来的一个时间作评估
ORA-06512:在 "SYS.DBMS_JOB",line 57
ORA-06512:在 "SYS.DBMS_JOB",line 134
ORA-06512:在 line 3
job
![beginsys.dbms_job.submit(job => :job,what => 'proc_test;',ne](/uploads/image/z/19641471-15-1.jpg?t=beginsys.dbms_job.submit%28job+%3D%3E+%3Ajob%2Cwhat+%3D%3E+%27proc_test%3B%27%2Cne)
interval => 'trunc(sysdate)+1/1440');
你的这个间隔时间设置有问题
trunc(sysdate) + 1/1440为当天的 0时01分.而当前时间往往大于这个当天值.所以你需要设置为
interval => 'trunc(sysdate)+1+1/1440');
意思是,明天的凌晨 0时01分.
这样,在每次oracle执行完当前job后,就可以将next_date设置为明天,而不是今天0时01分,因为今天的这个时间已经过去了.
你的这个间隔时间设置有问题
trunc(sysdate) + 1/1440为当天的 0时01分.而当前时间往往大于这个当天值.所以你需要设置为
interval => 'trunc(sysdate)+1+1/1440');
意思是,明天的凌晨 0时01分.
这样,在每次oracle执行完当前job后,就可以将next_date设置为明天,而不是今天0时01分,因为今天的这个时间已经过去了.