Wednesday, October 13, 2010

How to make Scheduler job

+ Create Schedule
SQL> begin
2 dbms_scheduler.create_schedule(
schedule_name => 'INTERVAL_EVERY_1_SECONDS',
start_date => trunc(sysdate),
repeat_interval => 'freq=SECONDLY;interval=1',
comments => 'Runtime: Every day all 1 SECONDS'); 3 4 5 6
7 end;
8 /

PL/SQL procedure successfully completed.

+ Create program

SQL> begin
dbms_scheduler.create_program
(program_name=> 'TEST_PROC01',
program_type=> 'STORED_PROCEDURE',
program_action=> 'SYS.TEST_PROC',
enabled=>true,
comments=>'job interval test'
);
end;
/
PL/SQL procedure successfully completed.

+ Create job

SQL> begin
dbms_scheduler.create_job
(job_name => 'JOB_TEST',
program_name=> 'TEST_PROC01',
schedule_name=>'INTERVAL_EVERY_1_SECONDS',
enabled=>true,
auto_drop=>false,
comments=>'job test');
end;
/
PL/SQL procedure successfully completed.

+ Run Job

SQL> begin
dbms_scheduler.run_job('JOB_TEST',TRUE);
end;
/
PL/SQL procedure successfully completed.