ORACLE學習筆記(二) 定時作業JOB

2021-08-19 15:10:56 字數 2224 閱讀 5846

每天6點執行一次

declare jobno number;

begin

dbms_job.submit(jobno,'delete_straininfo;',trunc(sysdate+1)+6/24,'trunc(sysdate+1)+1+6/24');

commit;

end;

每天12點執行一次

declare jobno number;

begin

dbms_job.submit(jobno,'delete_straininfo;',trunc(sysdate+1)+12/24,'trunc(sysdate+1)+1+12/24');

commit;

end;

每天18點執行一次

declare jobno number;

begin

dbms_job.submit(jobno,'delete_straininfo;',trunc(sysdate+1)+18/24,'trunc(sysdate+1)+1+18/24');

commit;

end;

每天0點執行一次

declare jobno number;

begin

dbms_job.submit(jobno,'delete_straininfo;',trunc(sysdate+1),'trunc(sysdate+1)+1');

commit;

end;

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

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

(5)、啟動job: dbms_job.run(jobno);

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

——broken為boolean值,nextdate可以是某一時刻停止,也可是sysdate(立刻停止)。

(7)、檢視所有job:select * from sys.user_jobs;

(8)、使用下面的sql查詢是否job還在running,前提是需要job執行時間不能過短:

select * from dba_jobs_running;

select job, next_date, next_sec, failures, broken from user_jobs; 

(1)、立即停止乙個已經啟動的定時作業

begin 

dbms_job.broken(48, true, sysdate);

commit;

end;

執行完之後跟蹤:select job, next_date, next_sec, failures, broken from user_jobs;

(2)、立即啟動定時作業

begin 

dbms_job.run(25);

commit;

end;

執行完之後跟蹤:select job, next_date, next_sec, failures, broken from user_jobs; 

(1)、每分鐘執行:interval => trunc(sysdate,'mi') + 1/(24*60) 

(2)、每天定時執行,如每天的凌晨1點執行:interval => trunc(sysdate) + 1 +1/(24) 

(3)、每天凌晨零點執行:interval => trunc(sysdate+1)

(4)、每週:trunc(sysdate+7)

(5)、每週定時執行,如每週一凌晨1點執行:interval => trunc(next_day(sysdate,'星期一'))+1/24  

(6)、每月:trunc(sysdate+30)

(7)、每天6點:trunc(sysdate+1)+6/24

(8)、每半個小時執行一次:sysdate+30/(24*60) 

oracle 定時 作業 例子

sql variablejobno number sql begin sql dbms job.submit jobno,pro name sysdate,sysdate 1 dbms job.submit job1,myproc sysdate,sysdate 1 1440 每天1440分鐘,即一...

oracle 學習筆記 二

from子句 select用於指定要查詢的列 from指定要從哪幾個表中查詢 如果要查詢所有列,可以在select後面使用 號 如果只查詢特定的列,可以直接在select後面指定列名,列名之間用逗號隔開 select from dept 使用別名 在sql語句中可以通過使用列的別名改標題的顯示文字,...

oracle學習筆記 二

from子句 select用於指定要查詢的列 from指定要從哪幾個表中查詢 如果要查詢所有列,可以在select後面使用 號 如果只查詢特定的列,可以直接在select後面指定列名,列名之間用逗號隔開 select from dept 使用別名 在sql語句中可以通過使用列的別名改標題的顯示文字,...