oracle定時器呼叫儲存過程

2021-06-19 10:53:13 字數 2614 閱讀 1556

資料庫技術學習

介紹orcale定時器的簡單用法,希望大家一看就能明白 

1.建立乙個表,為了能清楚看到定時器的運**況我們建立乙個帶有日期欄位的表 

sql**

createtablejob_table(run_timedate);  

2.建立儲存過程 

sql**

createor

replaceprocedurejob_procis

begin

insertintojob_table (run_time)values(sysdate);  

end;  

3.建立job,並且指定為一分鐘執行一次 

sql**

declare

job number;  

begin

dbms_job.submit(job, 'job_proc;', sysdate, 'trunc(sysdate,'

'mi'

') + 1 / (24*60)');  

end/  

commit;  

4.建立之後自動處於執行狀態,我們查詢job表,看看我們建立的job 

sql**

selectjob,broken,what,interval,t.*fromuser_jobs t;   

jobbroken

what

interval

...81

njob_proc;

trunc(sysdate,'mi') + 1 / (24*60)

...

引數介紹 

jobjob的唯一標識,自動生成的

broken

是否處於執行狀態,n;執行;y:停止

what

儲存過程名稱

interval

定義的執行時間

補充: 

描述                    interval引數值 

每天午夜12點            ''trunc(sysdate + 1)'' 

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

每星期二中午12點         ''next_day(trunc(sysdate ), ''''tuesday'''' ) + 12/24'' 

每個月第一天的午夜12點    ''trunc(last_day(sysdate ) + 1)'' 

每個季度最後一天的晚上11點 ''trunc(add_months(sysdate + 2/24, 3 ), ''q'' ) -1/24'' 

每星期六和日早上6點10分    ''trunc(least(next_day(sysdate, ''''saturday"), next_day(sysdate, "sunday"))) + (6×60+10)/(24×60)'' 

5.我們查詢一下表job_table看看裡面的資料 

sql**

select*fromjob_table  

run_time

2011-7-1 下午 05:21:14

2011-7-1 下午 05:22:04

2011-7-1 下午 05:23:04

6.停止job,停止成功之後檢視user_jobs表的broken是否變為y值了 

sql**

begin

dbms_job.broken(81,true);  

end;  

commit;  

7.啟動job,啟動成功之後檢視user_jobs表的broken是否變為n值了 

sql**

begin

dbms_job.run(81);  

end;  

commit;  

8.刪除job、儲存過程、表 

sql**

deleteuser_jobswherejob=81;  

dropprocedurejob_proc  

droptablejob_table   資料庫技術學習

oracle定時器呼叫儲存過程

介紹orcale定時器的簡單用法,希望大家一看就能明白 1.建立乙個表,為了能清楚看到定時器的運 況我們建立乙個帶有日期欄位的表 sql create table job table run time date 2.建立儲存過程 sql create orreplace procedure job ...

Oracle定時器呼叫儲存過程

關於oracle定時器呼叫儲存過程的一點總結,如果有不足的地方,希望大家多多指導,也是第一次在部落格上寫東西,以前也只是自己總結之後放在硬碟了,後來同事告訴自己,其實寫部落格可以獲得很多,不管是知識閱歷還是交朋友,所以也是抱著試試的心態,希望看到這篇部落格的朋友能對你有所幫助,謝謝。廢話不多說,開噴...

Oracle定時器呼叫儲存過程

1.建立表 create table job table run time date 2.建立儲存過程 create or replace procedure job proc is begin insert into job table run time values sysdate end 3....