Oracle创建定时器

2012-11-12

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

  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

  考试大温馨提示:本内容来源于网络,仅代表作者个人观点,与本站立场无关,仅供您学习交流使用。其中可能有部分文章经过多次转载而造成文章内容缺失、错误或文章作者不详等问题,请您谅解。如有侵犯您的权利,请联系我们,本站会立即予以处理。

分享到:
0
相关阅读
友情链接
© 2018 我考网 http://www.woexam.com 中国互联网举报中心 湘ICP备18023104号 京公网安备 11010802020116号
违法和不良信息举报:9447029@qq.com