使用DBMS_JOB在Oracle中创建作业

Jes*_*osh 2 sql oracle dbms-job

我正在努力创造一个每个圣诞节都会运行某个程序的工作.这是我走了多远:

declare
   jobno number;
begin
   dbms_job.submit( jobno,
                   'BEGIN GiveCoins; END;',
                    to_date('12/25', 'MM/DD'),
                    'sysdate + ?');
end;
/
Run Code Online (Sandbox Code Playgroud)

然而,我似乎无法找到一个简单的方法来改变每年的间隔,我只是一般很困惑如何去做这个,任何帮助非常感谢

Jus*_*ave 7

你想要的东西

declare
   jobno number;
begin
   dbms_job.submit( jobno,
                   'BEGIN GiveCoins; END;',
                    to_date('12/25/2012', 'MM/DD/YYYY'),
                    'add_months(trunc(sysdate),12)');
end;
/
Run Code Online (Sandbox Code Playgroud)

这将在2012年圣诞节的午夜和之后的每12个月首次开展工作.