如果想讓oracle 資料庫定時執行乙個什麼任務,可以用如下的方法實現:
上例子:
準備東西:
create table t3(k integer primary key, d date); -- 例子表
create sequence seq_test start with 1 increment by 1; --例子序列
create or replace procedure insert_into_t3 as --例子過程
begin
insert into t3 (k, d) values (seq_test.nextval, sysdate); --把t1裡面的相關資料插到t2中
commit; --插入一條記錄commit一次
end;
下面的**,將每分鐘執行一下上面的insert_into_t3過程
var job number;
begin
dbms_job.submit(
job => :job,
what => 'insert_into_t3;',
next_date => to_date('2014-06-17 12:35:00','yyyy-mm-dd hh24:mi:ss'),
interval => 'sysdate+1/(24*60)'
);
commit ;
end;
可以通過下面的語句查詢一下任務列表:
select * from user_jobs order by next_date;
如果想手動觸發一下任務,可以用如下語句:
begin
dbms_job.run(jobnum);
end;
/
通過下面的語句刪除任務
begin
dbms_job.remove(jobnum);
end;
/
注意:有乙個系統引數需要特別注意:job_queue_processes
如果 show parameter job_queue_processes 顯示其值為0,則定時任務不會執行。
需要用如下語句給它設定乙個》0的值。例如:
alter system set job_queue_processes=10 ;
oracle資料庫定時任務
不久前,做的專案中需要用到定時任務 有兩種實現方式 應用程式,資料庫。決定採用資料庫的定時任務。關於資料庫定時任務的資料,網上有很多文章,但當自己在設計時,並沒有僅通過一篇文章就解決問題。於是決定綜合網上資料和自己的專案,寫一篇oracle資料庫自帶的job來實現定時任務。一 定時任務的建立 啟動 ...
oracle資料庫定時任務
常要oracle資料庫定時的自動執行一些指令碼,或做資料庫備份,或做資料的提煉,或做資料庫的效能優化,包括重建索引等等的工作,這時需要用到乙個函式dbms job.submit,來完成oracle定時器job時間的處理上。使用dbms job.submit這個函式,我們只需要考慮兩個事情 安排某一任...
oracle資料庫定時任務
1.定時任務樣例 一 建立乙個表 create table t free twice id number 8 primary key,name nvarchar2 20 二 建立序列 記錄id值 create sequence create sequence t free twice log min...