Oralce定時執行儲存過程任務的設定步驟

2021-08-31 08:04:59 字數 1500 閱讀 7582

實現的功能:

每隔一分鐘自動向getsysdate表中插入當前的系統時間。

一、創測試表

create table getsysdate(test date);

二、創要定時執行的儲存過程

create or replace procedure insertsysdate as

begin

insert into getsysdate values (sysdate);

end ;

三、建立job,即建立待執行的定時任務過程

variable job1 number;

begin

dbms_job.submit(:job1,'insertsysdate;',sysdate,'sysdate+1/1440');

end;

四、啟動job,即啟動並執行定時任務過程

begin

dbms_job.run(:job1);

end;

五、檢視執行效果

select to_char(test,'yyyy/mm/dd hh24:mi:ss') from getsysdate;

結果如下:

2007/08/03 10:53:11

2007/08/03 11:05:51

部分重點引數補充說明:

dbms_job.submit(:jobno,//job號

'your_procedure;',//要執行的過程

trunc(sysdate)+1/24,//下次執行時間

'trunc(sysdate)+1/24+1'//每次間隔時間

); 刪除job:dbms_job.remove(jobno);

修改要執行的操作:job:dbms_job.what(jobno,what);

停止job:dbms.broken(job,broken,nextdate);

啟動job:dbms_job.run(jobno);

修改job_queue_processes的值:(保證其不為0否則job不自動執行)

可通過select * from v$parameter;檢視其值;

或者直接用show parameter job_queue_processes;檢視如下:

name type value

--------------- ----------- ------------

job_queue_processes integer 10

方法1.startup pfile='c:oracleora90databaseinitorcl.ora';

//這個方法用來修改initorcl.ora檔案的job_queue_processes引數,然後重新啟動資料庫

方法2.alter system set job_queue_processes=10

//這個方法不用重啟資料庫就可以生效,系統自動修改init.ora檔案以後即可生效 。

Oralce定時執行儲存過程任務的設定步驟

實現的功能 每隔一分鐘自動向getsysdate表中插入當前的系統時間。一 創測試表 create table getsysdate test date 二 創要定時執行的儲存過程 create or replace procedure insertsysdate as begin insert i...

Oralce定時執行儲存過程任務的設定步驟

實現的功能 每隔一分鐘自動向getsysdate表中插入當前的系統時間。一 創測試表 create table getsysdate test date 二 創要定時執行的儲存過程 create or replace procedure insertsysdate as begin insert i...

儲存過程定時執行

有兩種方法 1 編寫 shell 指令碼,使用 crontab 在後台定時執行 a shell 指令碼pr merge query report.sh bin sh oracle base oracle home 指定環境變數 oracle home oracle home data nls lan...