【发布时间】:2012-05-10 16:29:15
【问题描述】:
我正在尝试创建一个将在每个圣诞节运行特定程序的工作。这是我已经走了多远:
declare
jobno number;
begin
dbms_job.submit( jobno,
'BEGIN GiveCoins; END;',
to_date('12/25', 'MM/DD'),
'sysdate + ?');
end;
/
但是我似乎无法找到一种简单的方法来将时间间隔更改为每年,并且通常对如何进行此操作感到很困惑,非常感谢任何帮助
【问题讨论】:
-
不能添加到
ALL_JOBS表吗? -
@gdoron:如果您有 sysdba 角色,您也许可以这样做,但您不应该这样做。您永远不应该直接修改系统目录。
-
@Allan。谢谢你的提示。 (现在我明白为什么我很久以前尝试这样做时出错了...... {两天前})你如何删除工作?
-
@Allan。不应该直接更改
ALL_JOBS的原因是什么?它会导致什么? -
@gdoron:您不要更改它,因为它是数据字典的一部分。引用 Oracle 的话,“更改或操作数据字典表中的数据可能会对数据库的操作产生永久性的不利影响。”最明显的后果是您几乎肯定会取消整个实例获得 Oracle 支持的资格。除此之外,我不知道会发生什么,也没有特别想知道的动力。