講一下Oracle建立臨時job小竅門,建立Oracle臨時JOB是爲了臨時執行調用過程或者函數,只調用一次。函數
declarethis
VJOB number;命令行
begin進程
sys.dbms_job.submit(VJOB,rem
'PKG_RULECALL.MAKE_ALL_SAMPLE_BY_MONTH_WTH(''201701'',NULL);',it
Sysdate+1/24,class
null);date
commit;select
end;查詢
註釋:
1) Sysdate+1/24 :建立時日後推1個小時;
2)PKG_RULECALL.MAKE_ALL_SAMPLE_BY_MONTH_WTH(''201701'',NULL) :過程名及參數;
select s.JOB,s.LOG_USER,s.SCHEMA_USER,to_char(s.THIS_DATE,'yyyymmdd hh24:mi:ss') this_date,to_char(s.NEXT_DATE,'yyyymmdd hh24:mi:ss') NEXT_DATE,s.WHAT from user_jobs s;
在臨時JOB沒有執行可經過在命令行下執行刪除語句,若是已經執行須要先刪除執行的進程,在刪除JOB。
exec dbms_job.remove(293);COMMIT;