JOB在實際應用中,使用很多。一般用戶定時執行某些函數,存儲過程等。下面看看如何創建並啟動JOB。
例如,使用job定時執行某個存儲過程。
存儲過程名:Pro_Test_JOB
執行間隔:2小時,
sql語句如下
declare
job number;
v_count number;
begin
SELECT COUNT(*)
INTO v_count
FROM user_jobs uj
WHERE upper(uj.what) =
UPPER('Pro_Test_JOB;');
if v_count = 0 then
sys.dbms_job.submit(job => job,
what =>
'Pro_Test_JOB;',
next_date =>sysdate ,
interval => 'sysdate+2/24');
dbms_job.run(job);
commit;
end if;
end;
這裡有幾個主要參數要說明一下。
job-是指JOB的ID,自動生成的。
next_date-下次執行時間。
interval-執行頻率。
此處是不帶參數的job。