dbms_job.submit 单次执行

 DBMS_JOB.SUBMIT用于定时任务,基本用法如下:

DBMS_JOB.SUBMIT(:jobno,//job号   

                                     'your_procedure;',//要执行的过程   
                                     trunc(sysdate)+1/24,//下次执行时间   
                                     'trunc(sysdate)+1/24+1'//每次间隔时间   
                                   );   
     删除job:dbms_job.remove(jobno);   
     修改要执行的操作:job:dbms_job.what(jobno,what);   
     修改下次执行时间:dbms_job.next_date(job,next_date);   
     修改间隔时间:dbms_job.interval(job,interval);   
     停止job:dbms.broken(job,broken,nextdate);   
     启动job:dbms_job.run(jobno);   

 

今天遇到一个问题是,有些任务需要周期执行,有些任务只需要执行一次。开始时没注意,在第四个参数里传了空字符串,结果任务一建立就直接执行了。

后来查了资料才知道,如果单次执行,第四个参数需要传null。

试了一下,果然是这样。

posted @ 2014-04-17 16:31  喵尾景虎  阅读(2776)  评论(0编辑  收藏  举报