0

我想安排一个执行存储过程但失败的作业。如果我尝试手动运行它,我得到这个错误。SQL Server代理中的作业错误启动失败

Job ran manually throwing error

在此刻,我试图运行EXECUTE storedproc,但它需要很长时间才能完成。

请让我知道如何避免这种情况。

感谢,氩

回答

1

这会帮助,但作业的状态应该在SQL Server代理 - 可见>作业活动监视器

替换您的SQL像这样的东西:

DECLARE 
@JobStatus INT 
, @AttWarehouse UNIQUEIDENTIFIER = (
            SELECT TOP 1 
             [S].[job_id] 
            FROM 
             [msdb]..[sysjobs] AS [S] 
            WHERE 
             [S].[name] = 'AttendanceWarehouse' 
           ) 

SELECT 
    @JobStatus = [run_status] 
FROM 
    [msdb]..[sysjobhistory] 
WHERE 
    [job_id] = @AttWarehouse 
    AND [run_status] = 4 
PRINT @JobStatus 
IF @JobStatus <> 4 
BEGIN 
    EXEC [msdb]..[sp_start_job] 
     @job_id = @AttWarehouse 
END