JOB任務,在此寫個總結,以備日后之需。
用一個存儲過程創建并執行JOB,代碼如下:
執行此存儲過程,在ORACLE運行的JOB列表里會出現新增的JOB,可以用
用一個存儲過程創建并執行JOB,代碼如下:
- CREATE OR REPLACE PROCEDURE P_TEST_JOB
- IS
- --判斷任務是否已被創建,若任務被創建過,則 isExist > 0
- isExist NUMBER := 0;
- --歸檔任務標識
- jobId NUMBER;
- BEGIN
- SELECT COUNT(*) INTO isExist FROM ALL_JOBS J WHERE J.WHAT = '過程名;';
- --檢查任務是否已被創建,如果已被創建,則不做操作
- IF isExist = 0 THEN
- --創建任務
- DBMS_JOB.submit(jobId, --任務標識
- '過程名;', --任務要執行的存儲過程,后邊的分號不可略
- SYSDATE, --任務開始時間
- 'SYSDATE + 10/1440'); --任務執行周期,此處指每10分鐘執行一次
- COMMIT;
- --運行任務
- DBMS_JOB.run(jobId);
- COMMIT;
- END IF;
- END;
執行此存儲過程,在ORACLE運行的JOB列表里會出現新增的JOB,可以用
- SELECT * FROM ALL_JOBS J WHERE J.WHAT = '過程名;'