您可以運行查詢:
EXEC msdb.dbo.sp_help_jobhistory
@job_name = N'MonthlyData'
它會返回一個列run_status。狀態有:
0 - Failed
1 - Succeeded
2 - Retry
3 - Canceled
更多信息上MSDN
編輯:您可能要輪詢你的工作,並確保它的執行。你可以從sp_help_job過程信息。當這個過程返回的4
狀態就意味着工作處於閒置狀態。 然後,它的安全檢查它的運行狀態。
您可以查詢使用下面的代碼:
DECLARE @job_status INT
SELECT @job_status = current_execution_status FROM OPENROWSET('SQLNCLI', 'Server=.;Trusted_Connection=yes;','exec msdb.dbo.sp_help_job @job_name = ''NightlyBackups''')
WHILE @job_status <> 4
BEGIN
WAITFOR DELAY '00:00:03'
SELECT @job_status = current_execution_status FROM OPENROWSET('SQLNCLI', 'Server=.;Trusted_Connection=yes;','exec msdb.dbo.sp_help_job @job_name = ''NightlyBackups''')
END
EXEC msdb.dbo.sp_help_jobhistory
@job_name = N'NightlyBackups' ;
GO
此代碼將檢查狀態,等待3秒,然後重試。一旦我們得到的4個狀態,我們知道工作已經完成,它的安全檢查工作歷史。
你可能想表明你基本上需要進行民意調查,直到有問題的工作達到了「最終狀態」。 –
因此,一旦我開始工作,我需要進行民意調查,直到工作完成,然後執行職業史? – DtotheG
@ChristianK你能告訴我們更多關於輪詢Job Agent的信息嗎? – testing