Oracle创建定时器

来源:Oracle认证    发布时间:2012-11-12    Oracle认证视频    评论

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

  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

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

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答