Oracle创建job实例:创建一个job,使oracle每天23:59执行存储过程update_all_data

oracle创建job实例:创建一个job,使oracle每天23:59执行存储过程update_all_data

--创建一个job,使oracle每天23:59执行存储过程update_all_data
declare
  x number(9);
begin
  sys.dbms_job.submit
    (
      job        => x
     ,what       => 'update_all_data;'--存储过程名,可以是多个,用分号隔开
     ,next_date  => to_date('2012-11-02 23:59:00','yyyy-mm-dd hh24:mi:ss')
     ,interval   => 'trunc(sysdate+1)' --循环频率为一天
     ,no_parse   => false
    );
    commit;
end;
--删除job
begin
  dbms_job.remove(job);--job为任务号 可用select j.* from  dba_jobs j
end;
--修改job
begin
  dbms_job.change(264,
                  'initbigareasaleranking;initbigareamanagersalegrowth;initbigareasalegrowth;initbigareamanagersalerate;initbigareasalerate;initcontractsaledevote;initcustomsalerankings;',
                  to_date('2014.12.12 12:31:03', 'yyyy-mm-dd hh24:mi:ss'),
                  'trunc(sysdate + 1) + (12*60+31)/(24*60)');
  commit;
end;

停止job
select sid,job from dba_jobs_running;
select sid,serial# from v$session where sid='&sid';
alter system kill session '&sid,&serial';
begin
 dbms_job.broken(&job,true);
end;

-------------查询job-----------------
select job, what, next_date, next_sec, sysdate, failures, broken,interval from user_jobs a;
(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐