sp_delete_job (Transact-SQL)
Supprime un travail.
Conventions de la syntaxe Transact-SQL
Syntaxe
sp_delete_job { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ,
[ , [ @originating_server = ] 'server' ]
[ , [ @delete_history = ] delete_history ]
[ , [ @delete_unused_schedule = ] delete_unused_schedule ]
Arguments
[ @job_id= ] job_id
Numéro d'identification du travail à supprimer. job_id est de type uniqueidentifier, avec NULL comme valeur par défaut.[ @job_name= ] 'job_name'
Nom du travail à supprimer. job_name est de type sysname, avec NULL comme valeur par défaut.[!REMARQUE]
Vous pouvez définir la valeur de job_id ou de job_name, mais pas les deux valeurs à la fois.
[ @originating_server= ] 'server'
À usage interne uniquement.[ @delete_history= ] delete_history
Spécifie s'il faut supprimer l'historique du travail. delete_history est de type bit, avec 1 comme valeur par défaut. Lorsque delete_history a la valeur 1, l'historique des travaux est supprimé. Lorsque delete_history a la valeur 0, l'historique des travaux n'est pas supprimé.Notez que lorsqu'un travail est supprimé et que son historique ne l'est pas, les informations historiques correspondant au travail ne s'affichent pas dans l'historique de l'interface utilisateur graphique de l'Agent SQL Server. En revanche, elles se trouvent toujours dans la table sysjobhistory de la base de données msdb.
[ @delete_unused_schedule= ] delete_unused_schedule
Indique s'il faut supprimer les planifications associées à ce travail si aucun autre travail n'y fait référence. delete_unused_schedule est de type bit, avec 1 comme valeur par défaut. Si delete_unused_schedule a la valeur 1, les planifications associées à ce travail sont supprimées si aucun autre travail n'y fait référence. Si delete_unused_schedule a la valeur 0, les planifications ne sont pas supprimées.
Valeurs des codes renvoyés
0 (succès) ou 1 (échec)
Jeux de résultats
Aucun
Notes
L'argument @originating_server est réservé à un usage interne.
L'argument @delete_unused_schedule assure la compatibilité amont avec les versions antérieures de SQL Server en supprimant automatiquement les planifications auxquelles plus aucun travail ne fait référence. Notez que, par défaut, ce paramètre permet la compatibilité amont. Pour conserver les planifications qui ne sont associées à aucun travail, vous devez donner la valeur 0 à l'argument @delete_unused_schedule.
SQL Server Management Studio est un outil dont l'interface graphique permet de gérer facilement les travaux. Son utilisation est recommandée pour créer et gérer l'infrastructure des travaux.
Cette procédure stockée ne peut pas supprimer les plans de maintenance ni les travaux relevant de plans de maintenance. Pour supprimer les plans de maintenance, vous devez utiliser SQL Server Management Studio.
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 du rôle de serveur fixe sysadmin peuvent exécuter sp_delete_job pour supprimer un travail. Un utilisateur qui n'est pas membre du rôle de serveur fixe sysadmin n'a le droit de supprimer que les travaux dont il est propriétaire.
Exemple
L'exemple suivant supprime le travail NightlyBackups.
USE msdb ;
GO
EXEC sp_delete_job
@job_name = N'NightlyBackups' ;
GO