Gérer plusieurs étapes de travail

S’applique à :SQL ServerAzure SQL Managed Instance

Important

Dans Azure SQL Managed Instance, la plupart, mais pas toutes les fonctionnalités SQL Server Agent sont actuellement prises en charge. Pour plus d’informations, consultez Différences T-SQL entre Azure SQL Managed Instance et SQL Server.

Si votre travail est composé de plusieurs étapes, vous devez spécifier l'ordre dans lequel celles-ci sont exécutées. C’est ce que l’on appelle le contrôle du flux. Vous pouvez à tout moment ajouter de nouvelles étapes de travail et réorganiser le flux des étapes de travail. Les modifications prennent effet lors de l’exécution suivante du travail. Cette illustration montre le contrôle de flux pour un travail de sauvegarde de base de données.

SQL Server Agent job steps control of flow

La première étape est la sauvegarde de la base de données. Si cette étape échoue, l'Agent SQL Server signale l'échec à l'opérateur destinataire des notifications. Si l'étape de la sauvegarde de la base de données réussit, le travail se poursuit avec l'étape suivante, en l'occurrence la purge des données client. Si cette étape échoue, l'Agent SQL Server passe à l'étape de restauration de la base de données. Si la purge des données client réussit, le travail se poursuit avec l'étape suivante, en l'occurrence la mise à jour des statistiques, et ainsi de suite jusqu'à la dernière étape, qui se solde par la réussite ou par l'échec du rapport.

Vous définissez une action de contrôle de flux pour la réussite ou l'échec de chaque étape de travail. Vous devez préciser l'action à exécuter lors de la réussite ou de l'échec d'une étape de travail. Vous pouvez également définir le nombre de tentatives de reprises pour les étapes de travail ayant échoué ainsi que leurs intervalles.

Notes

Lorsque vous utilisez l'interface graphique utilisateur de l'agent SQL Server et que vous supprimez une ou plusieurs étapes à partir d'un travail multitâches, l'interface supprime toutes les étapes de travail puis rajoute les étapes restantes avec les références correctes en cas de réussite ou en cas d'échec. Par exemple, supposons que vous avez un travail comportant cinq étapes, et que la première étape est configurée pour passer à l'étape 4 si elle aboutit. Si vous supprimez l'étape 3, l'interface utilisateur graphique supprime toutes les étapes de ce travail et ajoute les quatre étapes restantes (1, 2, 4 et 5) avec les références corrigées. Dans ce cas, la référence de l'étape 1 est configurée pour passer à l'étape 3 si l'étape 1 aboutit.

Les étapes de travail doivent être autonomes. En d'autres termes, un travail ne peut pas passer des valeurs booléennes, des données ou des valeurs numériques entre des étapes de travail. Toutefois, vous pouvez passer des valeurs d’une étape de travail Transact-SQL à une autre en utilisant des tables permanentes ou des tables temporaires globales. À partir des étapes de travail, vous pouvez transmettre des valeurs afin d'exécuter, d'une étape à l'autre, des programmes qui effectuent des opérations sur des fichiers. Par exemple, le programme exécuté par une étape de travail écrit un fichier, tandis que celui exécuté par une étape de travail ultérieure le lit.

Notes

Si vous créez des étapes de travail en boucle, (l’étape de travail 1 est suivie par l’étape de travail 2, puis l’étape de travail 2 revient à l’étape de travail 1), un message d’avertissement apparaît lors de la création du travail avec SQL Server Management Studio.

SQL Server Agent enregistre dans l’historique des travaux les informations relatives aux travaux et aux étapes de travail.

Voir aussi

sp_add_job
sysjobhistory
sysjobs (Transact-SQL)
sysjobsteps
Implémenter des travaux
Gérer les étapes de travail