oracle 创建job


在数据库中定义定时任务要方便很多,下面是一个实例

在dbms_job.submit()方法中,定义参数时写明了每个参数的名称,因为该方法有很多参数(网上很多实例没有定义参数名,可能是由于oracle版本的问题,我的始终报错:参数未完全绑定,所以必须加上参数名)

declare
jobno number;  //job号码
begin
dbms_job.submit(job=>jobno,   //job号
  what=>'dailyTaskPkg.insert_daily_task_everyday;',   //执行的存储过程
  next_date=>sysdate,                                 //下次执行时间
  interval=>'TRUNC(sysdate)+1');             //时间间隔每天一点执行
commit;
end;

这样写,会立即执行一次定时任务。

查看所有job:

select job, next_date, next_sec, failures, broken from user_jobs;

得到job number后就可以执行一系列操作:启动,暂停,删除等

begin
  dbms_job.run(3); 
end;

begin
  dbms_job.broken(3,true); 
end;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM