Вы находитесь на странице: 1из 2

--http://dba.stackexchange.

com/questions/42119/passing-parameters-to-a-procedure-
executed-by-dbms-scheduler

select * from dba_objects where 1=1 and object_name like 'USER_SCHEDULER%';

--Creating a Schedule

BEGIN
DBMS_SCHEDULER.create_schedule (
schedule_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_DAILY',
start_date => (SYSTIMESTAMP ) AT TIME ZONE 'Asia/Kolkata'+(9.7/24),
repeat_interval => 'freq=HOURLY; INTERVAL=12',
end_date => NULL,
comments => 'Repeats Daily');
END;

BEGIN
DBMS_SCHEDULER.drop_schedule (schedule_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_DAILY');
END;

SELECT * FROM user_scheduler_schedules;

--Creating a Program

BEGIN
DBMS_SCHEDULER.create_program (
program_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG',
Program_type => 'STORED_PROCEDURE',
Program_action =>
'XXCSS_C3_SC_TIDAL_JOBS_PKG.GET_TIDAL_JOBS_LIST_PRC',
number_of_arguments => 1,
Enabled => FALSE,--Not enabling as number_of_arguments
validation check is failing.. Enabling it after arguments have been enabled.
Comments => 'C3 SAIB Tidal Jobs Program');
END;

BEGIN
DBMS_SCHEDULER.drop_program (program_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG');
END;

SELECT * FROM user_scheduler_programs;

--If arguments parameter needs to be changed.


BEGIN
DBMS_SCHEDULER.set_attribute (name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG',
attribute => 'number_of_arguments',
VALUE => 1);
END;

BEGIN
DBMS_SCHEDULER.define_program_argument (
program_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG',
argument_position => 1,
argument_name => 'P_APP_NAME',
argument_type => 'VARCHAR2',
DEFAULT_VALUE => 'SAIB');
END;
BEGIN
DBMS_SCHEDULER.drop_program_argument (
program_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG',
argument_position => 1);
END;

SELECT * FROM user_scheduler_program_args;

--enabling scheduler program


BEGIN
DBMS_SCHEDULER.enable (name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG');
END;

SELECT * FROM user_scheduler_programs;

--Creating a scheduler job


BEGIN
DBMS_SCHEDULER.create_job (
job_name => 'XXCSS_C3_SAIB_TIDAL_JOBS',
program_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG',
schedule_name => 'SAIB_SCH_EVRY_12HRS',
enabled => TRUE,
comments => 'SAIB Tidal Job program to run every 12 hours');
END;

SELECT * FROM user_scheduler_jobs;

--if defualt argument value not specified in define_program_argument


BEGIN
DBMS_SCHEDULER.set_job_argument_value (
job_name => 'XXCSS_C3_SAIB_TIDAL_JOBS_PRG',
argument_position => 1,
argument_value => 'SAIB');
END;

SELECT * FROM user_scheduler_job_args;

Вам также может понравиться