Partager via


Définir un flux en cas de réussite ou d'échec de l'étape de travail

Lors de la création de travaux de l'Agent Microsoft SQL Server, vous pouvez spécifier l'action que doit effectuer SQL Server si un échec survient pendant l'exécution du travail. Déterminez l'action que SQL Server doit effectuer en cas de réussite ou d'échec de chaque étape de travail. Procédez ensuite comme suit pour définir le déroulement logique des actions de l'étape de travail en utilisant l'Agent SQL Server.

  • Avant de commencer :  

    Sécurité

  • Pour définir un flux en cas de réussite ou d'échec de l'étape de travail, utilisez :

    SQL Server Management Studio

    Transact-SQL

    SQL Server Management Objects

Avant de commencer

Sécurité

Pour plus d'informations, consultez Implémenter la sécurité de l'Agent SQL Server.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de SQL Server Management Studio

Pour définir un flux en cas de réussite ou d'échec de l'étape de travail

  1. Dans l'Explorateur d'objets, développez Agent SQL Server, puis Travaux.

  2. Cliquez avec le bouton droit sur le travail à modifier, puis cliquez sur Propriétés.

  3. Cliquez sur la page Étapes, puis sur une étape et enfin sur Modifier.

  4. Dans la boîte de dialogue Propriétés de l'étape de travail, cliquez sur la page Avancé.

  5. Dans la liste Action en cas de succès, cliquez sur l'action à exécuter si l'étape de travail réussit.

  6. Dans la zone Tentatives de reprises, saisissez le nombre de fois (entre 0 et 9999) qu'il faut répéter l'étape de travail avant de la considérer comme un échec. Si vous saisissez une valeur supérieure à 0 dans la zone Tentatives de reprises, saisissez dans la zone Intervalle de reprise (minutes), le nombre de minutes d'attente, compris entre 1 et 9999, avant que le travail fasse l'objet d'un nouvel essai.

  7. Dans la liste Action en cas d'échec, cliquez sur l'action à exécuter si l'étape de travail échoue.

  8. Si le travail est un script Transact-SQL, vous pouvez choisir parmi les options suivantes :

    • Dans la zone Fichier de sortie, tapez le nom du fichier de sortie dans lequel la sortie du script sera écrite. Le fichier est remplacé par défaut à chaque exécution de l'étape de travail. Si vous ne voulez pas remplacer le ficher de sortie, activez la case à cocher Ajouter la sortie au fichier existant.

    • Activez la case à cocher Enregistrer un journal dans la table si vous voulez enregistrer l'étape de travail dans une table de la base de données. Par défaut, le contenu de la table est remplacé chaque fois que l'étape de travail s'exécute. Si vous ne voulez pas remplacer les données, activez Ajouter la sortie à l'entrée existante dans la table. Une fois l'étape de travail exécutée, vous pouvez afficher le contenu de la table en cliquant sur Afficher.

    • Activez Inclure la sortie de l'étape dans l'historique pour inclure la sortie dans l'historique de l'étape. Le résultat ne sera affiché que s'il n'y avait pas d'erreur. De même, le résultat peut être tronqué.

  9. Si la liste Exécuter en tant qu'utilisateur est disponible, sélectionnez le compte proxy ayant les informations d'identification que le travail utilisera.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de Transact-SQL

Pour définir un flux en cas de réussite ou d'échec de l'étape de travail

  1. Dans l'Explorateur d'objets, connectez-vous à une instance de Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter.

    USE msdb;
    GO
    EXEC sp_add_jobstep
        @job_name = N'Weekly Sales Data Backup',
        @step_name = N'Set database to read only',
        @subsystem = N'TSQL',
        @command = N'ALTER DATABASE SALES SET READ_ONLY', 
        @on_success_action = 1;
    GO
    

Pour plus d'informations, consultez sp_add_jobstep (Transact-SQL).

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de SQL Server Management Objects

Pour définir un flux en cas de réussite ou d'échec de l'étape de travail

Utilisez la classe JobStep à l'aide d'un langage de programmation que vous choisissez, tel que Visual Basic, Visual C# ou PowerShell. Pour plus d'informations, consultez SQL Server Management Objects (SMO).

Icône de flèche utilisée avec le lien Retour en haut[Top]