首页 > 数据库 > Oracle > Oracle Scheduler(1)用法简介
Oracle Scheduler用法简介
(一)创建表和过程
create table test20151021 (id int);
CREATE OR REPLACE PROCEDURE test_proc AS
BEGIN
insert into test20151021 values(1);
END test_proc;
/
(二)创建Job
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'test_job',
job_type => 'STORED_PROCEDURE',
job_action => 'SYSTEM.TEST_PROC',
start_date => sysdate,
repeat_interval => 'FREQ=MINUTELY;INTERVAL=1');
END;
/
(三) 启动job
begin
dbms_scheduler.enable('TEST_JOB');
end;
/
或者
exec dbms_scheduler.enable('TEST_JOB');
(四)禁用Job
begin
dbms_scheduler.disable('TEST_JOB');
end;
/
或者
exec dbms_scheduler.disable('TEST_JOB');
(五)运行job
begin
dbms_scheduler.run_job('TEST_JOB',TRUE); -- true代表同步执行
end;
/
或者
exec dbms_scheduler.run_job('TEST_JOB',TRUE);
注意:运行job与启动job的区别是,运行只能执行一次,而启动则是根据repeat_interval参数定期执行。
(六) 删除job
begin
dbms_scheduler.drop_job(job_name => 'TEST_JOB',force => TRUE);
end;
/
或者
exec dbms_scheduler.drop_job(job_name => 'TEST_JOB',force => TRUE);
(七) 查询job
select * from user_scheduler_jobs;
select * from dba_scheduler_jobs;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29485627/viewspace-1815455/ ,如需转载,请注明出处,否则将追究法律责任。