1. 程式人生 > >Oracle定時排程(schedule和job結合)

Oracle定時排程(schedule和job結合)

--建立定時排程
begin
  sys.dbms_scheduler.create_schedule(
  repeat_interval => 'FREQ=DAILY;BYHOUR=02;BYMINUTE=0;BYSECOND=0',
  --start_date => systimestamp at time zone 'Asia/Shanghai',
  start_date 	  => to_date('10-09-2014 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),
  end_date        => to_date('11-09-2014 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),
  schedule_name => 'appl.MIG_INFO_SCHEDULE');
END;
/
--建立作業
begin
  sys.dbms_scheduler.create_job(
  job_name => 'appl.MIG_INFO_JOB',
  job_type => 'PLSQL_BLOCK',
  job_action => 'begin
     PRO_MIG_bb3Month (idate => to_char(sysdate,''yyyy-mm-dd''),tableName => ''ORDER_INFO'',coldate =>''merchanttransdate'',formatDate=>''yyyy-mm-dd'');
     end;',
  schedule_name => 'appl.MIG_INFO_SCHEDULE',
  auto_drop => FALSE,
  enabled =>TRUE
  );
END;
/

1.上述程式碼表示定時排程從 2014年9月10日0點開始到 2014年9月11日0點結束,

2.執行頻率為每天凌晨2點(這裡其實就執行一次)

3.在schedule中指定schedule_name與job中對應。

參考部落格:

(轉)關於Oracle 10g的schedule job

ORACLE排程(schedule)詳解(轉)

 

Oracle 10g Scheduler 特性--使用Schedules(轉)