當前位置:成語大全網 - 書法字典 - 我想在oracle 10g中創建壹個作業,每天上午9: 00執行壹個流程。進程名假定為pro_1001。謝謝妳的建議。

我想在oracle 10g中創建壹個作業,每天上午9: 00執行壹個流程。進程名假定為pro_1001。謝謝妳的建議。

在sql developer的作業下的右鍵菜單中創建新的更容易。

介紹幾種數據字典視圖:

Dba_jobs該數據庫將任務定義到任務隊列中。

dba_jobs_running當前正在運行的任務。

當前用戶擁有的User_jobs任務

時間間隔參數的間隔設置

每天運行壹次'系統日期+1 '

每小時運行壹次'系統日期+1/24 '

每10分鐘運行壹次'系統日期+10/(24*60)'

每30秒運行壹次'系統日期+30/(24*60*60)'

每周壹次'系統日期+7 '

停止運行任務並將其刪除為空。

上述時間間隔不能保證任務的下壹次運行將在特定的時間,只能指定任務兩次運行之間的時間間隔。

特定日期或時間的示例

每晚午夜' trunc(sysdate+1)'

每天早上8:30 ' trunc(sysdate+1)+(8 * 60+30)/(24 * 60)'

每個星期二中午12 '第二天(trunc (sysdate),"星期二"+12/24)'

12每月第壹天的午夜' trunc(last _ day(sysdate)+1)'

在總結之前,請逐壹解釋Job的參數:

作業參數是Submit()過程返回的binary_ineger。該值用於唯壹標識作業;

要執行的PL/SQL代碼塊的參數是什麽;

next_date參數指示作業將在何時運行。寫作業時不需要指定這個值;默認值為“4000-1-1”;

重新執行該作業的時間間隔參數。

Interval的值是決定何時重新執行作業的關鍵

附上兩個我自己寫的例子:

-每天淩晨1點

聲明

x數;

開始

sys . DBMS _ job . submit(job = & gt;x,

what = & gtbegin pro _ job _ test.pro _ job _ day結束;',

next _ date = & gtto _ date(' 13-07-2011 01:00:00 ',' dd-mm-yyyy hh24:mi:ss '),

interval = & gtTRUNC(系統日期+1)+1/24 ');

SYS。DBMS_OUTPUTPUT_LINE('作業號為:' | | to _ char(x));

提交;

結束;

-65438+每月0天。

聲明

x數;

開始

sys . DBMS _ job . submit(job = & gt;x,

what = & gtbegin pro _ job _ test . pro _ job _ month;結束;',

next _ date = & gtto _ date(' 01-08-2011 01:00:00 ',' dd-mm-yyyy hh24:mi:ss '),

interval = & gttrunc(last _ day(sysdate)+1)');

SYS。DBMS_OUTPUTPUT_LINE('作業號為:' | | to _ char(x));

提交;

結束;