资源描述:
《plsqldeveloperoracle创建定时调度job》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、PL/SQLDEVELOPERORACLE创建定时调度job·Oracle 创建oracle调度job右键“new”弹出Submitter这里不用修改Job这里不用填What:pw_sbtz_gisdata_procedure; 请注意后面的“;”,一定不能少Nextdate:sysdateInterval:TRUNC(next_day(sysdate,'星期一'))+1/24后面的不用填写,只需要填写上面三个,填写完成后点击“Apply”就可以了1、代表每个星期一凌晨一点 TRUNC(next_day(sysdate,'星期一'))+1/242、每天午夜12
2、点 ''TRUNC(SYSDATE+1)''3、每天早上8点30分 ''TRUNC(SYSDATE+1)+(8*60+30)/(24*60)''4、每星期二中午12点 ''NEXT_DAY(TRUNC(SYSDATE),''''TUESDAY'''')+12/24''5、每个月第一天的午夜12点 ''TRUNC(LAST_DAY(SYSDATE)+1)''6、每个季度最后一天的晚上11点''TRUNC(ADD_MONTHS(SYSDATE+2/24,3),''Q'')-1/24''7、每星期六和日早上6点10分
3、 ''TRUNC(LEAST(NEXT_DAY(SYSDATE,''''SATURDAY"),NEXT_DAY(SYSDATE,"SUNDAY")))+(6×60+10)/(24×60)8、每分钟执行Interval=>TRUNC(sysdate,'mi')+1/(24*60)或Interval=>sysdate+1/14409、每天定时执行例如:每天的凌晨1点执行Interval=>TRUNC(sysdate)+1+1/(24)10、每周定时执行例如:每周一凌晨1点执行Interval=>TRUNC(next_day(sysdate,'星期一'))+1/2
4、411、每月定时执行例如:每月1日凌晨1点执行Interval=>TRUNC(LAST_DAY(SYSDATE))+1+1/2412、每季度定时执行例如每季度的第一天凌晨1点执行Interval=>TRUNC(ADD_MONTHS(SYSDATE,3),'Q')+1/2413、每半年定时执行例如:每年7月1日和1月1日凌晨1点Interval=>ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/2414、每年定时执行例如:每年1月1日凌晨1点执行Interval=>ADD_MONTHS(trunc(sysdate,'yyyy'),12)
5、+1/24常要oracle数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等等的工作,这时需要用到一个函数dbms_job.submit,来完成Oracle定时器Job时间的处理上。使用dbms_job.submit这个函数,我们只需要考虑两个事情:安排某一任务,和定制一个执行任务的时间点。但最重要也是最棘手的事情,我认为还是确定一个执行任务的时间点。时间点确定了,其他的事情就好办了。下面是函数dbms_job.submit使用方法:Java代码 1.dbms_job.submit( job out binary_
6、integer, 2.what in archar2, 3.next_date in date, 4.interval in varchar2, 5.no_parse in boolean) dbms_job.submit(joboutbinary_integer,what in archar2,next_date in date,interval in varchar2,no_parse in boolean)其中:●job:输出变量,是此任务在任务
7、队列中的编号;●what:执行的任务的名称及其输入参数;●next_date:任务执行的时间;●interval:任务执行的时间间隔。其中Interval这个值是决定Job何时,被重新执行的关键;当interval设置为null时,该job执行结束后,就被从队列中删除。假如我们需要该job周期性地执行,则要用‘sysdate+m’表示。如何更好地确定执行时间的间隔需要我们掌握一个函数TRUNC。1.TRUNC(fordates)TRUNC函数为指定元素而截去的日期值。其具体的语法格式如下:TRUNC(date[,fmt])其中:date一个日期值fmt日期格式,
8、该日期将由指定的元素格式