2017-07-28 785 views
0

我想安排一个作业Oracle 11g,如下所示,但出现错误。 开始获取ORA-06512:在“SYS.DBMS_ISCHED”,第124行和ORA-06512:在“SYS.DBMS_ISCHED”,第124行错误

sqlplus/AS SYSDBA 

SYS.dbms_scheduler.create_job(

job_name=>'testjob', 

job_type=>'plsql_block', 

job_action=>'BEGIN greetings; END;', 

start_date=>SYSTIMESTAMP, 

repeat_interval => 'byminute=0; bysecond=5;'); 

END; 

/

误差

Error report: ORA-27465: invalid value byminute=0; bysecond=5; for attribute REPEAT_INTERVAL 

ORA-06512: at "SYS.DBMS_ISCHED", line 124 

ORA-06512: at "SYS.DBMS_SCHEDULER", line 271 

ORA-06512: at line 2 
27465. 00000 - "invalid value %s for attribute %s" 

*原因:为指定的属性提供了无效值。

*操作:使用此属性的有效值重新发出该命令。

起初,我想它的权限问题,所以我给下面的权限

GRANT创造就业系统;

GRANT EXECUTE ON system.greetings TO public;

任何人都可以找出问题吗?

+0

尝试删除最后的';'在repeat_interval =>'byminute = 0; bysecond = 5;') – I3rutt

回答

0

一切都在消息中。重复间隔是错误的。检查Calendar Syntax

来自文档。

repeat_interval = regular_schedule | combined_schedule 这意味着重复间隔必须是regular_schedule或combined_schedule。

哪里regular_schedule

regular_schedule = frequency_clause 
[";" interval_clause] [";" bymonth_clause] [";" byweekno_clause] ..etc 

这意味着frequency_clause是强制其他都是可选的。在你的代码中,没有frequency_clause。 工作示例。 repeat_interval => 'FREQ=HOURLY; byminute=0; bysecond=5;'

+0

感谢您的理解 – Prachi

相关问题