Oracle中job的实例分析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle中job的实例分析

Oracle定时器(Job)各时间段写法汇总 对于DBA来说,数据库Job再熟悉不过了,因为经常要数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等等的工作。但是,Oracle定时器Job时间的处理上,千变万化,今天我把比较常用写法汇总如下: 在总结之前,先把Job的参数一一说明一下: job参数是由Submit()过程返回的binary_ineger。这个值用来唯一标识一个工作; what参数是将被执行的PL/SQL代码块; next_date参数指识何时将运行这个工作。写Job的时候可以不指定该值; interval参数何时这个工作将被重执行。 其中Interval这个值是决定Job何时,被重新执行的关键。 例如:有存储过程 p_dosomethings,需要被不同的时间间隔执行。 1declare??? 2牋 jobno number;牋?3 INCLUDEPICTURE /Images/OutliningIndicators/None.gif \* MERGEFORMATINET begin牋?4牋 dbms_job.submit( 5 INCLUDEPICTURE /Images/OutliningIndicators/None.gif \* MERGEFORMATINET 牋牋 jobno, 6 INCLUDEPICTURE /Images/OutliningIndicators/None.gif \* MERGEFORMATINET ????p_dosomething;,??--what 7???? to_date(20090101020000,yyyy-mm-dd hh24:mi:ss),--next_date,可以不填 8????Interval时间字符串--interval,关键设置 9?? );??? 10牋 commit;牋?11 INCLUDEPICTURE /Images/OutliningIndicators/None.gif \* MERGEFORMATINET end; 12 1、 每分钟执行 Interval = TRUNC(sysdate,’mi’) + 1 / (24*60) 2、 每天定时执行 例如:每天的凌晨2点执行 Interval = TRUNC(sysdate) + 1 +2 / 24 3、 每周定时执行 例如:每周一凌晨2点执行 Interval = TRUNC(next_day(sysdate,星期一))+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),6)+2/24 oracle job 下午mumu问我,如何终止一个正在执行的job,我当时也没有想起来(或者说,以前都是run,而没有romove过),所以就上网找了一下,感觉下面写的还不错,就收了起来,呵呵~~~~ ORACLE中JOB的应用 1、创建存储过程 create or replace procedure *pro_name as begin insert into agri_exhibition_basecur (messid,title,type,pub_date) select id,title,sort,pub_date from agri_message where (trunc(sysdate-pub_date)=0 and rownum6) and sort=供 ; insert into agri_exhibition_basecur (messid,title,type,pub_date) select id,title,sort,pub_date from agri_message where (trunc(sysdate-pub_date)=0 and rownum6) and sort=求 ; end; / 2、创建JOB variable jobdxm number; begin dbms_job.submit(:jobdxm,exhi_pro_dxm;,sysdate,t

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档