Desejo chamar um procedimento armazenado em um trabalho do Oracle Scheduler. Meu procedimento e trabalho são mostrados abaixo:
Procedimento armazenado
create or replace PROCEDURE emp_test
IS
begin
delete from emp;
insert into emp(empid,empname)
select empid1,empname1 from emp_temp;
end;
Trabalho
BEGIN
dbms_scheduler.create_job (
job_name => 'emp_test_JOB',
job_type => 'PLSQL_BLOCK',
job_action => 'BEGIN
CALL emp_test();
END;',
start_date => SYSTIMESTAMP,
enabled => true,
repeat_interval => 'FREQ=DAILY');
END;
Eu sou capaz de chamar o procedimento como CALL emp_test()
sem usar um trabalho.
Quando estou usando a mesma coisa em um trabalho como acima, o trabalho foi criado com sucesso, mas o procedimento não está em execução, as linhas não são inseridas. Eu preciso executar este trabalho e as linhas devem ser inseridas; Alguém pode me ajudar por favor?