当前位置:  数据库>oracle

Oracle job自动任务实用指南

    来源: 互联网  发布时间:2017-06-07

    本文导语: 作为Oracle的定时任务,Oracle job介于服务器层级的crontab和应用程序(如java spring的定时任务)之间,在数据库层对数据处理有重要的价值。 下面简单分享一下Oracle job如何来调用存储过程。 --创建job,不带参数的情况 variable etljobno n...

作为Oracle的定时任务,Oracle job介于服务器层级的crontab和应用程序(如java spring的定时任务)之间,在数据库层对数据处理有重要的价值。
 下面简单分享一下Oracle job如何来调用存储过程。

--创建job,不带参数的情况
 variable etljobno number;
 begin
    dbms_job.submit(:etljobno,'proc_ctitetl;',sysdate,'sysdate+3/1440'); 
end;
 /

--创建job,带参数的情况
 variable JOB_TEST number;
 begin
  dbms_job.submit(:JOB_TEST,'begin hlqtestjob(1,''aa''); end;',sysdate,'sysdate+1/1440');
  commit;
 end;
 /

--启动job
 begin
    dbms_job.run(:etljobno);
 end;
 /
 --停止正在执行的job
 begin
 dbms_job.broken(:etljobno,true );
 end;
 /
 --删除job
 begin
 dbms_job.remove(:etljobno);
 end;
 commit;
 /

--查询job
 SELECT JOB, NEXT_DATE, NEXT_SEC, FAILURES, BROKEN FROM DBA_JOBS;
 如果要打断已经scheduledjob,dbms_job.broken(:etljobno,true ),打断之后,DBA_JOBS的BROKEN字段为Y,如果你要停止job或者暂停job
 后修改存储过程代码,就可以broken,修改完之后再次启动job即可。
 有了oracle job,你就可以不必在每日的凌晨3点来执行必须的数据处理,或者选择系统负载较低的时候去执行特殊的任务。以下是一些oracle
 job的时间间隔的设置:
 1:每分钟执行
 Interval => TRUNC(sysdate,'mi') + 1/ (24*60)

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

3:每周定时执行
 例如:每周一凌晨1点执行
 Interval => TRUNC(next_day(sysdate,'星期一'))+1/24

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

5:每季度定时执行
 例如每季度的第一天凌晨1点执行
 Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24

6:每半年定时执行
 例如:每年7月1日和1月1日凌晨1点
 Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24

7:每年定时执行
 例如:每年1月1日凌晨1点执行
 Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24

--------------------------------------------------------------------------------

Linux-6-64下安装Oracle 12C笔记

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

--------------------------------------------------------------------------------


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • oracle的job不能运行问题的解决方法
  • Oracle中job的使用
  • Oracle中job的使用详解
  • Oracle的恢复管理器及DBMS_JOB包分析
  • 解析Oracle查询和删除JOB的SQL
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,