oracle中job的建立刪除及終止

2021-06-22 02:51:13 字數 1116 閱讀 4951

1、建立job(幾種常用的時間)

--每天十二點執行

declare

job1 number;

begin

sys.dbms_job.submit(job1,

':what',

trunc(sysdate)+12/24,

'trunc(sysdate)+12/24+1');

commit;

end;

--每天零點執行

declare

job1 number;

begin

sys.dbms_job.submit(job1,

':what',

trunc(sysdate),

'trunc(sysdate)+1');

commit;

end;

--每週一零點執行

declare

job1 number;

begin

sys.dbms_job.submit(job1,

':what',

trunc(sysdate,'d')+1,

'trunc(sysdate,'d')+8');

commit;

end;

2、刪除job

select t.job from user_jobs;--找出要刪除的job的編號

--刪除

begin

dbms_job.remove(:job_num);

end;

3、終止正在使用的job

--找出正在執行的job的編號及會話sid

select t.job,t.sid from dba_jobs_running;

--利用查出來的sid查詢正在執行的job的會話資訊

select t.sid,t.serial# from v$session t where t.sid = :sid;

--利用查出來的會話資訊殺掉該會話

alter system kill session ':sid,:serial';

--broken job

begin

dbms_job.broken(:job_num,true);

end;

Oracle 建立與刪除job小例子

建立測試表 create table test a date 建立乙個自定義過程 create or replace procedure myproc asbegin insert into test values sysdate end 建立job declare x number begin s...

PL SQL中job建立及刪除

plsql中學習job 學習job 建表 create table test job para date date commit insert into test job values sysdate commit select from test job 建立存貯過程 create orrepla...

oracle 建立job 語句

declare job id pls integer begin sys.dbms job.submit job job id,what prc matching 需要執行的方法 next date sysdate,執行job的時間 interval trunc sysdate 1 6 24 重新執...