# Oracle job应用

# 创建Oracle Job

var job1 number;
begin
  dbms_job.submit(:job1, 'test;', sysdate,'sysdate+1/1440');
  commit;
  dbms_job.run(:job1);
end;
/

# 常用的定时时间

1.每分钟执行 Interval => TRUNC(sysdate,’mi’) + 1 / (24*60)

2.每天定时执行

例如:每天的凌晨2点执行 Interval => TRUNC(sysdate) + 1 +2 / (24)

3.每周定时执行

例如:每周一凌晨2点执行

Interval => TRUNC(next_day(sysdate,'星期一'))+2/24

4.每月定时执行

例如:每月1日凌晨2点执行 Interval =>TRUNC(LAST_DAY(SYSDATE))+1+2/24

5.每季度定时执行 例如每季度的第一天凌晨2点执行 Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 2/24

6.每半年定时执行

例如:每年7月1日和1月1日凌晨2点 Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+2/24

7.每年定时执行

例如:每年1月1日凌晨2点执行 Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'),6)+2/24