Oracle定时任务(Job)的使用

1、定时任务

         定时任务就是oracle提供的,在特定的时间,指定特定的时间间隔执行的存储过程,可以在存储过程中执行一切你想要的操作。数据同步,数据清理。

        定时任务创建

定义一个在每日凌晨一点执行数据清除的存储过程,oracle会在固定的时间点清除不需要的数据

declare
  job number;
BEGIN
  DBMS_JOB.SUBMIT(  
        JOB => job,  /*自动生成JOB_ID*/  
        WHAT => 'pr_cleanData;',  /*需要执行的存储过程名称或SQL语句*/  
        NEXT_DATE => sysdate+1/24,  /*初次执行时间-下一个小时执行一次*/  
        INTERVAL => 'trunc(sysdate+1)+1/24' /*每次凌晨1点执行一次*/
      );  
  commit;
end;

    手工执行Job

   通过如下语句可手工执行一次job, job id可以通过查询系统job拿到:

select * from user_jobs;
 begin
   DBMS_JOB.RUN(1778); /*1778job的id*/
 end;

删除Job

begin
  /*删除自动执行的job*/
  dbms_job.remove(1778);
end;

停用Job

dbms_job.broken(1778,true);

修改要执行的操作

dbms_job.what(1778,'pr_test;');  

修改间隔时间

dbms_job.interval(1778,interval);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值