熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

OracleJOB時間間隔參考

2013-11-13 22:22:48  來源: Oracle 

  最近做了一個系統自動抽檢的東東Oracle中創建的Job會在自己設定的時間自動運行存儲過程下面為最近總結的東東

  假設你的存儲過程名為PROC_RAIN_JM

  再寫一個存儲過程名為PROC_JOB_RAIN_JM

  內容是

  ///////////////////////////////////////////////////////////////////

  Create Or Replace Procedure PROC_JOB_RAIN_JM

  Is

  li_jobno         Number;

  Begin

  DBMS_JOBSUBMIT(li_jobnoPROC_RAIN_JM;SYSDATETRUNC(SYSDATE + ));

  End;

  ///////////////////////////////////////////////////////////////////

  最後那一項可以參考如下

  每天午夜TRUNC(SYSDATE + )

  每天早上TRUNC(SYSDATE + ) + (*+)/(*)

  每星期二中午NEXT_DAY(TRUNC(SYSDATE ) TUESDAY ) + /

  每個月第一天的午夜TRUNC(LAST_DAY(SYSDATE ) + )

  每個季度最後一天的晚上TRUNC(ADD_MONTHS(SYSDATE + / ) Q ) /

  每星期六和日早上TRUNC(LEAST(NEXT_DAY(SYSDATE SATURDAY) NEXT_DAY(SYSDATE SUNDAY))) + (*+)/(*)

  其中li_jobno是它的ID可以通過這個ID停掉這個任務最後想說的是不要執行多次你可以在裡面管理起來發現已經運行了就不SUBMIT

  每天運行一次 SYSDATE +

  每小時運行一次 SYSDATE + /

  每分鐘運行一次 SYSDATE + /(*

  每秒運行一次 SYSDATE + /(**)

  每隔一星期運行一次 SYSDATE +

  不再運行該任務並刪除它 NULL

  每年號零時    trunc(last_day(to_date(extract(year from sysdate)||||yyyymmdd))+)


From:http://tw.wingwit.com/Article/program/Oracle/201311/18936.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.