Когато за първи път създавате задание на SQL Server Agent, може да искате да направите бърз тест, за да видите дали действително ще работи без проблеми.
Това е доста лесно, когато използвате SSMS GUI, но как да го направите в T-SQL?
Отговор:sp_start_job
съхранена процедура.
Пример
Ето пример за демонстрация:
USE msdb;
GO
EXEC sp_start_job N'BackupKrankyKranesDB';
GO
В този случай изпълних задание, наречено BackupKrankyKranesDB
.
Процедурата не връща никакви набори от резултати. Въпреки това, ако го стартирате в SSMS, може да видите съобщение като това:
Job 'BackupKrankyKranesDB' started successfully. Completion time: 2020-12-13T19:54:18.3503521-08:00
Параметри
Можете също да предоставите имената на параметрите. В такъв случай можех да направя това:
USE msdb;
GO
EXEC sp_start_job @job_name = N'BackupKrankyKranesDB';
GO
Можете да предоставите или името на заданието, или идентификатора на заданието (но не и двете). Идентификаторът на заданието е уникален идентификатор със стойност по подразбиране NULL
.
Следователно бихме могли да направим това:
USE msdb;
GO
EXEC sp_start_job @job_id = '4FAE7031-36E8-4934-81E6-0D561F375627';
GO
Това е идентификационният номер на заданието по-горе. Очевидно ще трябва да използвате идентификатора на заданието, което трябва да изпълните. Можете да използвате sp_help_job
съхранена процедура за получаване на идентификатора на заданието.
Синтаксис
Действителният синтаксис е така:
sp_start_job
{ [@job_name =] 'job_name'
| [@job_id =] job_id }
[ , [@error_flag =] error_flag]
[ , [@server_name =] 'server_name']
[ , [@step_name =] 'step_name']
[ , [@output_flag =] output_flag]
Вижте sp_start_job
на уебсайта на Microsoft за обяснение на всеки аргумент.
Преглед на историята на заданията
След като изпълнихме задачата, вече можем да използваме sp_help_jobhistory
за да проверите дали е добавен към историята на заданията:
EXEC sp_help_jobhistory
@job_name = 'BackupKrankyKranesDB',
@mode = 'FULL';
Използване на @mode = 'FULL'
гарантира, че получаваме по-подробна информация.
Ето какво получих след изпълнение на заданието:
Вижте sp_help_jobhistory
на уебсайта на Microsoft за повече информация относно тази съхранена процедура.
Вижте също 4 начина за получаване на хронология на заданията на SQL Server за повече опции за връщане на хронологията на заданията.