2017-02-09 16 views
0

我创建了一个DB2任务,在特定的时间自动运行我的存储过程,我创建使用ADMIN_TASK_ADD程序任务:居留制NOTRUN在自动任务调度

CALL SYSPROC.ADMIN_TASK_ADD ('WR_AM_ADT_AUTO_CNRRM_SCHDLR', 
            NULL, 
            NULL, 
            NULL, 
            '05 16 * * *', 
            'ASPECT', 
            'WR_AM_ADT_AUTO_CNRRM', 
            '81930',NULL,NULL); 

            COMMIT; 

我要天天跑我的计划任务在下午4点05分,但没有工作,并给予地位

NOTRUN,SQLCODE -104

那么谁能告诉我我做错了什么?

我也使用下面的命令检查任务列表我调度:

SELECT * from SYSTOOLS.ADMIN_TASK_LIST 

我使用Windows上的DB2 9.7版本。

+0

愚蠢的问题,但我必须问:你是否启用调度程序? – mustaccio

+0

是的,我启用它,它不是一个愚蠢的问题。你有这个解决方案吗? – Govind

回答

1

任务NOTRUN的状态意味着错误导致调度程序无法调用任务的过程。 SQLCODE指示错误的类型。

我建议你以下;

确认调度程序已启用。

db2 > db2set 
DB2_ATS_ENABLE=YES 

ATS依赖于SYSTOOLSPACE表存储历史数据和配置信息。您可以使用以下查询来检查系统中是否存在表空间。

db2 select TBSPACE from SYSCAT.TABLESPACES where TBSPACE = 'SYSTOOLSPACE' 

可以在隔离

CALL WR_AM_ADT_AUTO_CNRRM() 

测试存储过程,然后在程序器运行你的任务!