1.查詢job資訊
select * from dba_jobs t;
select * from user_jobs t;
相關檢視
dba_jobs describes all jobs in the database.
user_jobs describes all jobs owned by the current user
all_jobs
dba_jobs_running 包含正在執行job相關資訊
2.操作job命令
停止某個job
sql> exec dbms_job.broken(1,true);
sql> commit; //必須提交否則無效
啟動某個job
sql> exec dbms_job.broken(1,false);
sql> commit; //必須提交否則無效
停其他使用者的job
sql>exec sys.dbms_job.broken(1,true);
sql>commit;
執行job
dbms_job.run(1);
刪除job
dbms_job.remove(1);
新建job
sql> exec variable job01 number;
sql> exec dbms_job.submit(job => :job01,what => 'p_test;', next_date => sysdate, interval => 'sysdate+1/1440');
//每分鐘執行一次,一天為1440分鐘
修改job
sql> exec dbms_job.change(job => :job01,what => 'p_test;', next_date => sysdate, interval => 'sysdate+1/1440');
3.dba_jobs欄位描述
字段(列) 型別 描述
job number 任務的唯一標示號
log_user varchar2(30) 提交任務的使用者
priv_user varchar2(30) 賦予任務許可權的使用者
schema_user varchar2(30) 對任務作語法分析的使用者模式
last_date date 最後一次成功執行任務的時間
last_sec varchar2(8) 如hh24:mm:ss格式的last_date日期的小時,分鐘和秒
this_date date 正在執行任務的開始時間,如果沒有執行任務則為null
this_sec varchar2(8) 如hh24:mm:ss格式的this_date日期的小時,分鐘和秒
next_date date 下一次定時執行任務的時間
next_sec varchar2(8) 如hh24:mm:ss格式的next_date日期的小時,分鐘和秒
total_time number 該任務執行所需要的總時間,單位為秒
broken varchar2(1) 標誌引數,y標示任務中斷,以後不會執行
interval varchar2(200) 用於計算下一執行時間的表示式
failures number 任務執行連續沒有成功的次數
what varchar2(2000) 執行任務的pl/sql塊
current_session_label raw mlslabel 該任務的信任oracle會話符
clearance_hi raw mlslabel 該任務可信任的oracle最大間隙
clearance_lo raw mlslabel 該任務可信任的oracle最小間隙
nls_env varchar2(2000) 任務執行的nls會話設定
misc_env raw(32) 任務執行的其他一些會話引數
4.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)'
關於oracle job定時執行的問題
關於oracle job定時執行的問題?問?我在乙個oracle伺服器上執行乙個job定時執行程式。建立test表 create table test a date 建立myproc儲存過程 create or replace procedure myproc as begin insert int...
oracle job的相關操作
1 在sql中,首先要在資料庫中建立乙個儲存過程pack ywtj.ywtjweek 可以通過sql語句執行,達到新增儲存過程的目的,另外新增儲存過程的方法不贅述。2 在sql中,建立job,使資料庫每隔一段時間執行一次該儲存過程 定時執行job declare njob3 number begin...
oracle job的簡介和例項
每天1點執行的oracle job樣例 declare x number begin sys.dbms job.submit job x,what etl run d date next date to date 2009 08 26 01 00 00 yyyy mm dd hh24 mi ss i...