sp_start_job (Transact-SQL)

Ordonne à l'Agent SQL Server d'exécuter immédiatement un travail.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

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]

Arguments

  • [ @job_name= ] 'job_name'
    Nom du travail à démarrer. Spécifiez soit job_id soit job_name, mais pas les deux à la fois. job_name est de type sysname, avec NULL comme valeur par défaut.

  • [ @job_id= ] job_id
    Numéro d'identification du travail à démarrer. Spécifiez soit job_id soit job_name, mais pas les deux à la fois. job_id est de type uniqueidentifier, avec NULL comme valeur par défaut.

  • [ @error_flag= ] error_flag
    Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

  • [ @server_name= ] 'server_name'
    Serveur cible sur lequel doit être lancé le travail. server_name est de type nvarchar(128), avec une valeur par défaut NULL. server_name doit être l'un des serveurs cibles visés par le travail en cours.

  • [ @step_name= ] 'step_name'
    Nom de l'étape où doit commencer l'exécution du travail. Ne s'applique qu'aux travaux locaux. step_name est de type sysname et prend NULL comme valeur par défaut.

  • [ @output_flag= ] output_flag
    Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

Valeurs des codes renvoyés

0 (succès) ou 1 (échec)

Jeux de résultats

Aucun

Notes

Cette procédure stockée se trouve dans la base de données msdb.

Autorisations

Seuls les membres du rôle de serveur fixe sysadmin peuvent exécuter cette procédure stockée. Les autres utilisateurs doivent disposer de l'un des rôles de base de données fixes SQL Server Agent suivants dans la base de données msdb.

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Pour en savoir plus sur les autorisations de ces rôles, consultez Rôles de base de données fixes de l'Agent SQL Server.

Les membres des rôles SQLAgentUserRole et SQLAgentReaderRole peuvent lancer uniquement les travaux dont ils sont propriétaires tandis que les membres de SQLAgentOperatorRole démarrent tous les travaux locaux, y compris ceux qui appartiennent à d'autres utilisateurs. Les membres de sysadmin peuvent lancer tous les travaux locaux et multiserveurs.

Exemple

L'exemple suivant démarre un travail appelé Weekly Sales Data Backup.

USE msdb ;
GO

EXEC dbo.sp_start_job N'Weekly Sales Data Backup' ;
GO