当前所在位置:珠峰网资料 >> 计算机 >> Oracle认证 >> 正文
Oracle创建定时器
发布时间:2011/12/8 16:59:41 来源:城市学习网 编辑:ziteng

  ——创建日志信息表(测试表)

  create table T_LOG(id number,datetime DATE);

  ——插入测试数据insert into t_log values (1,'25-5月-2006');

  ——查看日志信息select * from t_log;

  ——创建删除日志信息的存储过程create or replace procedure pro_clear_log  as begin delete from T_LOG where datetime < add_months(sysdate,-12);   ——删除一年前的存储过程commit;end;

  ——创建调度任务declare jobno number;begin dbms_job.submit(jobno,what => 'pro_clear_log;',   ——pro_clear_log为存储过程的名称Interval => 'TRUNC(sysdate,''mi'') + 1 / (24*60)'   ——定义时间间隔);commit;end;

  select * from user_jobs;——查看调度任务

  select * from dba_jobs_running;——查看正在执行的调度任务

  select * from dba_jobs;——查看执行完的调度任务

  ——删除调度任务declare jobno number;begin dbms_job.remove(48) ;commit;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))+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'),12)+2/24

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved