oracle 創建定時任務job,創建sql

-- 創建定時任務,判斷如果已有這個定時任務,則刪除重建
DECLARE JobNum NUMBER(5) := 0;
        JobID  NUMBER(5) := 0;
BEGIN

-- 查是否已經存在,調度的job
  SELECT COUNT(*) INTO JobNum FROM DBA_JOBS WHERE  UPPER(WHAT) LIke  UPPER('SP_MON_DATA') ||'%';

-- 存在就刪除
  IF JobNum > 0 THEN
    SELECT NVL(JOB,0) INTO JobID FROM DBA_JOBS WHERE  UPPER(WHAT) LIke  UPPER('SSP_MON_DATA') ||'%';
    IF JobID > 0 THEN
      DBMS_JOB.REMOVE(JobID);
      COMMIT;
    END IF;
  END IF;
END;
/
DECLARE
  v_Job  NUMBER;
BEGIN

--SP_MON_DATA 爲存儲過程(沒有參數),SYSDATE + 1 下個粒度
  DBMS_JOB.SUBMIT(v_Job, 'SP_MON_DATA;', TRUNC(SYSDATE, 'HH24') + 1, 'SYSDATE + 1');
  COMMIT;
END;
/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章