Oracle資料庫中JOB與儲存過程的接合用法!

2021-04-15 10:26:12 字數 868 閱讀 9762

儲存過程

create or replace procedure tt is

begin

update infoopen

set checktype = 2

where floor(to_date(to_char(limittime, 'yyyy-mm-dd'), 'yyyy-mm-dd') -sysdate)<=5 and status<> 2 and checktype<>1; --顯示即將超時

update infoopen

set isovertime = 1

where finishtime > limittime

and status = 2; --超時處理

update infoopen

set isovertime = 2

where finishtime < limittime

and status = 2; --沒有超時處理

dbms_output.put_line('處理成功!');

end tt;

執行job

variable jobno number;

begin

dbms_job.submit(:jobno,'tt;',sysdate,'sysdate+1');

commit;

end;

/begin

dbms_job.run(:jobno);

end;

/移除job

exec dbms_job.remove(:job1);

exec dbms_job.remove(190);

commit;

/檢視job

select * from dba_jobs;

oracle資料庫JOB方式執行任務

在執行一些資料庫操作的時候,有的任務比較複雜,需要花費數個小時的時間。直接執行的話,有如果出現網路中斷或者vpn 斷掉時,往往會導致前功盡棄,有事不得不花費大量的時間在旁邊進行監控。而採用job方式的話,只要保證 沒有問題,可以確保一次執行成功,因為job是提交到oracle伺服器上進行執行的。具體...

Oracle學習之 Oracle資料庫的儲存結構

資料庫以有組織的方式儲存資料資訊。oracle資料庫使用各種儲存結構來儲存資料。oracle資料庫的主要儲存結構 oracle的基本儲存資料的結構有表空間,資料檔案,控制檔案,各種段 包括資料段,索引段,臨時段,以及回滾段等 區間,資料塊等。表空間 tablespace 表空間 tablespace...

Oracle資料庫中,有Job不能自動執行。

oracle資料庫中,有job不能自動執行。1 手動run job發現不執行。lastdate 為空值。refresh 時total time數值一直增加。說明此job一直在執行。2 檢視job的執行的指令碼,發現指令碼執行時產生死迴圈。3 broken 此job。檢視此job還在執行。select...