数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle数据库定时器Job


发布日期:2023年04月10日
 
Oracle数据库定时器Job

写法

declare

jobno number;

begin

dbms_jobsubmit(

jobno

nextMonthInventoryCARRYFORWARD(to_char(sysdate||||yyyyMMdd||||)) what

sysdate next_date可以不填

TRUNC(LAST_DAY(SYSDATE))++/Interval时间字符串 interval关键设置

end;

在Oracle数据库中我们经常会用到定时器Job来让数据库定时的自动执行一些脚本或做数据库备份或做数据的提炼或做数据库的性能优化包括重建索引等等的工作但是Oracle定时器Job时间的处理上千变万化还是比较灵活的本文我们总结了一些Oracle数据库定时器Job在各个时间段得写法接下来我们就开始介绍这些

Job参数是有Submit()过程返回的binary_integer

what参数是将被执行的PL/SQL代码块

next_date参数指何时将运行这个工作写Job的时候可以不指定该值

interval参数何时这个工作将被重执行

其中Interval这个值是决定Job何时被重新执行的关键

每分钟执行 Interval => TRUNC(sysdate mi)+/(*

每天定时执行 例如每天的凌晨点执行 Interval => TRUNC(sysdate)++/(

每周定时执行 例如每周一凌晨点执行 Interval => TRUNC(next_day(sysdate ))+/ 星期一一周的第二天

每月定时执行 例如每月日凌晨点执行 Interval => TRUNC(LAST_DAY(SYSDATE))++/

每季度定时执行 例如每季度的第一天凌晨点执行 Interval => TRUNC(ADD_MONTH(SYSDATE) Q)+/

每半年定时执行 例如每年日和日凌晨点 Interval => ADD_MONTHS(trunc(sysdateyyyy)+/

每年定时执行 例如每年日凌晨点执行 Interval => ADD_MONTHS(trunc(sysdateyyyy)+/

上一篇:浅谈存取Oracle当中扫描数据的方法

下一篇:安装好Oracle后SQL*Plus的操作初步