oracle job 时间每五分钟执行怎么写
2022-12-11 · 百度认证:北京惠企网络技术有限公司官方账号
oracle job 时间每五分钟执行:
begin
sys.dbms_job.submit(job => :job,
what => '一个存储过程;',
Interval =>TRUNC(sysdate,'mi') + 5/ (24*60));
commit;
end;
其中:如果改成TRUNC(sysdate,'mi')+ 10/ (24*60) 就是每10分钟执行次。每秒钟执行次:Interval => sysdate+ 1/(24 * 60 * 60)。如果改成sysdate + 10/(24 *60 * 60)就是10秒钟执行次。
使用dbms_job.submit方法过程,这个过程有五个参数:job、what、next_date、interval与no_parse:
1、job参数是输出参数,由submit()过程返回的binary_ineger,这个值用来唯一标识一个工作。一般定义一个变量接收,可以去user_jobs视图查询job值。
2、what参数是将被执行的PL/SQL代码块,存储过程名称等。
3、next_date参数指识何时将运行这个工作。
4、interval参数何时这个工作将被重执行。
5、no_parse参数指示此工作在提交时或执行时是否应进行语法分析——true,默认值false。指示此PL/SQL代码在它第一次执行时应进行语法分析,而FALSE指示本PL/SQL代码应立即进行语法分析。
扩展资料:
1、每天定时执行
例如:每天的凌晨1点执行
Interval =>TRUNC(sysdate) + 1 +1/ (24)
2、每周定时执行
例如:每周一凌晨1点执行:
Interval =>TRUNC(next_day(sysdate,'星期一'))+1/24
3、每月定时执行
例如:每月1日凌晨1点执行:
Interval=>TRUNC(LAST_DAY(SYSDATE))+1+1/24
4、每季度定时执行
例如每季度的第一天凌晨1点执行:
Interval =>TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24
参考资料来源:百度百科-Oracle系统
参考资料来源:百度百科-Oracle PL/SQL从入门到精通