beginsys.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 57ORA-06512:在 "SYS.DBMS_JOB",lin

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/27 10:30:11
beginsys.dbms_job.submit(job=>:job,what=>''proc_test;'',next_date=>sysdate,interval=>''trunc(sysdate)+1

beginsys.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 57ORA-06512:在 "SYS.DBMS_JOB",lin
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

beginsys.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 57ORA-06512:在 "SYS.DBMS_JOB",lin
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分,因为今天的这个时间已经过去了.