一個(gè)簡(jiǎn)單的Oracle定時(shí)任務(wù)
dev. 時(shí)間 : 2010-06-09 作者:佚名 編輯:壹枝雪糕 點(diǎn)擊: 1209 [ 評(píng)論 ] - - 一、建表 create table onlineuser( UPDATETIME DATE, LOGINTIME DATE, USERID NUMBER, LOGINTYPE NUMBER, IP VARCHAR2(20), GUID VARCHAR2(200), PORT NUMBER); 二、在PLSQL中創(chuàng)建存儲(chǔ)過(guò)程: create or replace procedure pro_onlineuser AS carinfo_id number; BEGIN insert into ONLINEUSER values (sysdate,sysdate,133,'5','172.16.37.234','45',33); commit; end pro_onlineuser; 三、在SQL命令窗口中啟動(dòng)任務(wù): 在SQL>后執(zhí)行:
VARIABLE jobno number;
begin DBMS_JOB.SUBMIT(:jobno,'pro_onlineuser;',SYSDATE,'sysdate+1/24/60'); commit; end; / 四、跟蹤任務(wù)的情況(查看任務(wù)隊(duì)列): SQL> select job,next_date,next_sec,failures,broken from user_jobs; JOB NEXT_DATE NEXT_SEC FAILURES B
---------- ------------ ---------------- ---------- - 21 14-JUL-08 15:10:50 0 N 22 14-JUL-08 15:10:01 0 N 23 14-JUL-08 15:10:01 0 N 說(shuō)明有3個(gè)任務(wù)存在了。
執(zhí)行select * from test t查看定時(shí)任務(wù)的結(jié)果??梢钥闯龆〞r(shí)任務(wù)是正常執(zhí)行了的。
五、停止已經(jīng)啟動(dòng)的定時(shí)任務(wù):
先執(zhí)行select job,next_date,next_sec,failures,broken from user_jobs;
以查看定時(shí)任務(wù)的job號(hào)。
在SQL>中執(zhí)行下面的語(yǔ)句停止一個(gè)已經(jīng)啟動(dòng)的定時(shí)任務(wù)22,23:
begin
dbms_job.remove(21); commit; end; / 表示停止job為1的任務(wù)。
執(zhí)行后顯示如下:
PL/SQL procedure successfully completed
六、查看進(jìn)程數(shù): show parameter job_queue_processes; 必須>0,否則執(zhí)行下面的命令修改: alter system set job_queue_processes=5; 七、再創(chuàng)建一個(gè)任務(wù)(每5分鐘執(zhí)行一次):
variable jobno number;
begin
dbms_job.submit(:jobno, 'pro_onlineuser;', sysdate,'sysdate+1/24/12'); commit; end; / 建立一個(gè)定時(shí)任務(wù)后,在PLSQL中查看JOB,它的sql語(yǔ)句類(lèi)似的是如下:
begin
sys.dbms_job.submit(job => :jobno, what => 'pro_test;', next_date => to_date('21-02-2008 17:37:26', 'dd-mm-yyyy hh24:mi:ss'), interval => 'sysdate+1/24/12'); commit; end; / 所以,創(chuàng)建一個(gè)任務(wù)的完整的格式是:
variable jobno number; begin sys.dbms_job.submit(job => :jobno, what => 'pro_test;', next_date => to_date('21-02-2008 17:37:26', 'dd-mm-yyyy hh24:mi:ss'), interval => 'sysdate+1/24/12'); commit; end; / --系統(tǒng)會(huì)自動(dòng)分配一個(gè)任務(wù)號(hào)jobno。
八、 執(zhí)行select job,next_date,next_sec,failures,broken from user_jobs; |
|
來(lái)自: 滾滾小白 > 《數(shù)據(jù)庫(kù)》