Ao criar um trabalho do SQL Server Agent pela primeira vez, convém fazer um teste rápido para ver se ele realmente será executado sem problemas.
Isso é bastante direto ao usar a GUI do SSMS, mas como você faz isso no T-SQL?
Resposta:O
sp_start_job
procedimento armazenado. Exemplo
Segue um exemplo para demonstrar:
USE msdb;
GO
EXEC sp_start_job N'BackupKrankyKranesDB';
GO
Nesse caso, executei um trabalho chamado
BackupKrankyKranesDB
. O procedimento não retorna nenhum conjunto de resultados. No entanto, se você executá-lo no SSMS, poderá ver uma mensagem como esta:
Job 'BackupKrankyKranesDB' started successfully. Completion time: 2020-12-13T19:54:18.3503521-08:00
Parâmetros
Você também pode fornecer os nomes dos parâmetros. Nesse caso, eu poderia ter feito isso:
USE msdb;
GO
EXEC sp_start_job @job_name = N'BackupKrankyKranesDB';
GO
Você pode fornecer o nome do trabalho ou o ID do trabalho (mas não ambos). O ID do trabalho é um identificador exclusivo com um padrão de
NULL
. Portanto, poderíamos ter feito isso alternativamente:
USE msdb;
GO
EXEC sp_start_job @job_id = '4FAE7031-36E8-4934-81E6-0D561F375627';
GO
Esse é o ID do trabalho acima. Obviamente, você precisaria usar o ID do trabalho que precisa executar. Você pode usar o
sp_help_job
procedimento armazenado para obter o ID do trabalho. A Sintaxe
A sintaxe real é assim:
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]
Consulte
sp_start_job
no site da Microsoft para obter uma explicação de cada argumento. Visualizar histórico de tarefas
Agora que executamos o trabalho, podemos usar
sp_help_jobhistory
para verificar se foi adicionado ao histórico do trabalho:EXEC sp_help_jobhistory
@job_name = 'BackupKrankyKranesDB',
@mode = 'FULL';
Usando
@mode = 'FULL'
garante que obtenhamos informações mais detalhadas. Aqui está o que eu tenho depois de executar o trabalho:
Consulte
sp_help_jobhistory
no site da Microsoft para obter mais informações sobre esse procedimento armazenado. Consulte também 4 maneiras de obter o histórico de trabalhos do SQL Server para obter mais opções para retornar o histórico de trabalhos.