寫法
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))+/
From:http://tw.wingwit.com/Article/program/Oracle/201311/17451.html