sp_start_job (Transact-SQL)
Instrui o SQL Server Agent a executar um trabalho imediatamente.
Sintaxe
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]
Argumentos
[ @job_name= ] 'job_name'
O nome do trabalho a ser iniciado. É necessário especificar a job_id ou o job_name, mas não é possível especificar ambos ao mesmo tempo. job_name é sysname, com um padrão NULL.[ @job_id= ] job_id
O número de identificação do trabalho a ser iniciado. É necessário especificar a job_id ou o job_name, mas não é possível especificar ambos ao mesmo tempo. job_id é uniqueidentifier, com um padrão NULL.[ @error_flag= ] error_flag
Identificado apenas para fins informativos. Sem suporte. A compatibilidade futura não está garantida.[ @server_name= ] 'server_name'
O servidor de destino no qual o trabalho será iniciado. server_name é nvarchar(128), com um padrão NULL. server_name deve ser um dos servidores de destino ao qual o trabalho está atualmente direcionado.[ @step_name= ] 'step_name'
O nome da etapa na qual a execução do trabalho será iniciada. Aplicado somente a trabalhos locais. step_name é sysname, com um padrão NULL[ @output_flag= ] output_flag
Identificado apenas para fins informativos. Sem suporte. A compatibilidade futura não está garantida.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Conjuntos de resultados
Nenhum
Comentários
Este procedimento armazenado está no banco de dados msdb.
Permissões
Por padrão, os membros da função de servidor fixa sysadmin podem executar este procedimento armazenado. Deve ser concedida a outros usuários uma das seguintes funções de banco de dados fixas do SQL Server Agent no banco de dados msdb:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Para obter detalhes sobre as permissões dessas funções, consulte Funções de banco de dados fixas do SQL Server Agent.
Os membros de SQLAgentUserRole e SQLAgentReaderRole só podem iniciar trabalhos que possuem. Os membros de SQLAgentOperatorRole podem iniciar todos os trabalhos locais, incluindo os pertencentes a outros usuários. Os membros de sysadmin podem iniciar todos os trabalhos locais e multiservidor.
Exemplos
O exemplo a seguir inicia um trabalho denominado Weekly Sales Data Backup.
USE msdb ;
GO
EXEC dbo.sp_start_job N'Weekly Sales Data Backup' ;
GO