1. 创建要调用的存储过程
CREATE OR REPLACE PROCEDURE INESRT_SCHEDULER_USER IS
BEGIN
INSERT INTO SCHEDULER_USER
(ID, USERNAME, PASSWORD)
VALUES
(RUDY_SEQ.NEXTVAL,
'rudy' || RUDY_SEQ.CURRVAL,
'password' || RUDY_SEQ.CURRVAL);
COMMIT;
END INESRT_SCHEDULER_USER;
2.创建program
DBMS_SCHEDULER.CREATE_PROGRAM(PROGRAM_NAME => 'rudy_program',
PROGRAM_TYPE => 'STORED_PROCEDURE',
PROGRAM_ACTION => 'inesrt_scheduler_user',
ENABLED => TRUE);
3.创建schedule
DBMS_SCHEDULER.CREATE_SCHEDULE(SCHEDULE_NAME => 'rudy_scheduler',
REPEAT_INTERVAL => 'FREQ=WEEKLY;BYDAY=MON,SAT,SUN');
4.创建window
DBMS_SCHEDULER.CREATE_WINDOW(WINDOW_NAME => 'rudy_scheduler_window',
SCHEDULE_NAME => 'rudy_scheduler',
RESOURCE_PLAN => 'rudy_membership_plan',
DURATION => INTERVAL '60' MINUTE,
WINDOW_PRIORITY => 'HIGH',
COMMENTS => 'THIS IS A TEST SCHEDULER WINDOW');
5.创建job
DBMS_SCHEDULER.CREATE_JOB(JOB_NAME => 'rudy_job',
PROGRAM_NAME => 'rudy_program',
SCHEDULE_NAME => 'rudy_scheduler');