oracle數據庫 添加定時器

目錄

 

1、爲什麼要添加定時器?

2、創建oracle定時器需要幾步?

3、舉個例子?

4、查看定時器


1、爲什麼要添加定時器?

    和linux中的crontab一樣,來執行一些需要定期執行的一些操作;

2、創建oracle定時器需要幾步?

    三步:

        1)準備sql;

        2)創建存儲進程,即函數;

        3)創建定時器,定時去執行此函數;

3、舉個例子?

準備sql:

1)準備sql

UPDATE ceshi SET error_count = 0 WHERE a = 1 AND b = 2;

2)創建存儲進程

    PS:切記切記,不可存在空格,不然會報錯的,一定要檢查,尤其是結尾處,絕對不要存在空格,我在此處卡了整整一天。

CREATE OR REPLACE PROCEDURE UPDATE_COUNT IS    -- UPDATE_COUNT:函數名稱
BEGIN
    UPDATE ceshi SET error_count = 0 WHERE a = 1 AND b = 2;    -- 具體要執行的sql
commit;
END;

3)創建定時器,定時去執行此函數

DECLARE UPDATE_COUNT_time number;    -- UPDATE_COUNT_time:給函數定義的工作空間
BEGIN
    SYS.DBMS_JOB.SUBMIT(
        job => UPDATE_COUNT_time,    -- 調用工作空間
        what => 'UPDATE_COUNT;',    -- 工作空間中執行的函數
        next_date => SYSDATE,    -- 下一次執行的時間,不要改,貌似是這樣子,不太確定
        interval => 'sysdate+300/86400');    -- 每隔5分鐘執行一次
commit;
End;

    定時時間可以參考:https://www.cnblogs.com/lcword/p/5622966.html

4、查看定時器

SELECT job, next_date, next_sec, failures, broken FROM user_jobs;

 

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