Я создал или пытался создать регулярно назначаемую работу, например:
declare
lv_job number;
lv_proc varchar2(1000);
begin_date DATE := to_date('10.01.08');
begin
lv_proc:='begin regIncomePerMonth; end;';
dbms_job.submit(lv_job,
lv_proc,
begin_date,
'begin_date+30'
);
dbms_output.put_line('the job created with job number: '|| lv_job);
exception
when others then
dbms_output.put_line('error'||sqlcode||sqlerrm);
end;
(см. http://oracle.ittoolbox.com/documents/regularly-scheduled-plsql-procedure-14568)
но это не может быть так, потому что это всегда будет 8 января + 30, и я хочу начать с 8 января и идти с шагом 30 дней до декабря.
и моя процедура:
создать или заменить процедуру regIncomePerMonth
курсор activeemps является
выберите f.id_pessoa, f.escalao, s.salario_actual
из funcionario f, salario s, где f.removed! = 1
и f.escalao = s.escalao;
1012 * начать *
for emp in activeemps loop
INSERT INTO registo_salarial values(S_REGISTO_SALARIAL.nextval,emp.id_pessoa,
trunc(sysdate,'MM'),emp.salario_actual,NULL);
end loop;
конец;