要在 oracle 中創建每天執行一次的定時任務,需要執行以下三個步驟:創建一個作業。為作業添加一個子作業,并設置其計劃表達式為“interval 1 day”。啟用作業。
如何在 Oracle 中創建每天執行一次的定時任務
在 Oracle 中創建每天執行一次的定時任務的步驟如下:
1. 創建一個作業
CREATE JOB job_name
AS
sys.dbms_scheduler.create_job(job_name,
'DEFAULT_JOB_CLASS',
'job_desc');
登錄后復制
其中:
job_name:作業的名稱
DEFAULT_JOB_CLASS:作業的默認作業類
job_desc:作業的描述
2. 為作業添加一個子作業
sys.dbms_scheduler.create_job_subjob(job_name,
'job_subname',
'job_type',
'job_parameters',
'schedule_expression',
'enabled');
登錄后復制
其中:
job_subname:子作業的名稱
job_type:子作業的類型(例如,EXECUTABLE、SQL、PLSQL_BLOCK)
job_parameters:子作業的參數(根據 job_type 而異)
schedule_expression:子作業的計劃表達式(例如,’INTERVAL 1 DAY’)
enabled:子作業是否啟用(’TRUE’ 或 ‘FALSE’)
3. 啟用作業
sys.dbms_scheduler.enable(job_name);
登錄后復制
示例(使用 SQL 執行一個簡單的 SELECT 查詢)
CREATE JOB daily_job
AS
sys.dbms_scheduler.create_job(job_name,
'DEFAULT_JOB_CLASS',
'Daily job to execute a SQL query');
sys.dbms_scheduler.create_job_subjob(job_name,
'daily_subjob',
'SQL',
'BEGIN
SELECT COUNT(*)
FROM users;
END;',
'INTERVAL 1 DAY',
'TRUE');
sys.dbms_scheduler.enable(job_name);
登錄后復制







