Partager via


Spécifier une action de point d'arrêt

S'applique à : SQL Server

L’action de point d’arrêt spécifie une tâche personnalisée que le débogueur Transact-SQL effectue pour un point d’arrêt. Si le nombre d'accès spécifié est atteint et si les conditions de point d'arrêt spécifiées sont satisfaites, le débogueur effectue l'action spécifiée pour le point d'arrêt.

Considérations sur l'action

L'action par défaut pour un point d'arrêt consiste à arrêter l'exécution lorsque le nombre d'accès et la condition de point d'arrêt sont tous les deux satisfaits. L'utilisation principale d'une action dans le débogueur Transact-SQL est d'imprimer des informations dans la Fenêtre Sortie du débogueur.

Le message est spécifié dans la zone Afficher un message dans la fenêtre de sortie : et se présente sous la forme d'une chaîne de texte comprenant des expressions contenant des informations sur le Transact-SQL en cours de débogage. Ces expressions sont notamment les suivantes.

  • Une expression Transact-SQL comprise entre des accolades ({}). Les expressions peuvent inclure des variables Transact-SQL , des paramètres et des fonctions intégrées, Les exemples incluent {@MyVariable}, {@NameParameter}, {@@SPID}, ou {SERVERPROPERTY('ProcessID')}.

  • Un des mots clés suivants :

    • $ADDRESS retourne le nom de la procédure stockée ou de la fonction définie par l'utilisateur dans laquelle le point d'arrêt est défini. Si le point d'arrêt est défini dans la fenêtre de l'éditeur, $ADDRESS retourne le nom du fichier de script modifié. $ADDRESS et $FUNCTION retournent les mêmes informations dans le débogueur Transact-SQL.

    • $CALLER retourne le nom de l'unité de code Transact-SQL qui a appelé une procédure stockée ou une fonction. Si le point d’arrêt se trouve dans la fenêtre de l’éditeur, $CALLER retourne <No caller available>. Si le point d'arrêt se trouve dans une procédure stockée ou une fonction définie par l'utilisateur appelée à partir du code dans la fenêtre de l'éditeur, $CALLER retourne le nom du fichier modifié. Si le point d'arrêt se trouve dans une procédure stockée ou une fonction définie par l'utilisateur appelée à partir d'une autre procédure stockée ou fonction, $CALLER retourne le nom de la procédure ou fonction appelante.

    • $CALLSTACK retourne la pile des appels des fonctions dans la chaîne qui a appelé la procédure stockée ou la fonction définie par l'utilisateur en cours. Si le point d'arrêt se trouve dans la fenêtre de l'éditeur, $CALLSTACK retourne le nom du fichier de script modifié.

    • $FUNCTION retourne le nom de la procédure stockée ou de la fonction définie par l'utilisateur dans laquelle le point d'arrêt est défini. Si le point d'arrêt est défini dans la fenêtre de l'éditeur, $FUNCTION retourne le nom du fichier de script modifié.

    • $PID et $PNAME retournent l'ID et le nom du processus de système d'exploitation qui exécute l'instance du moteur de base de données où le code Transact-SQL s'exécute. $PID renvoie le même ID que SERVERPROPERTY('ProcessID'), sauf que $PID est une valeur hexadécimale alors que SERVERPROPERTY('ProcessID') est une valeur décimale.

    • $TID et $TNAME retournent l'ID et le nom du thread de système d'exploitation qui exécute le lot Transact-SQL. Le thread est associé au processus qui exécute l'instance du moteur de base de données. $TID renvoie le même valeur que SELECT kpid FROM sys.sysprocesses WHERE spid = @@SPID, sauf que $TID est une valeur hexadécimale alors que kpid est une valeur décimale.

  • Vous pouvez également utiliser la barre oblique inverse (\) comme caractère d’échappement pour autoriser des accolades et des barres obliques inverses dans le message : \{, \} et \\.

Indiquer une action

  1. Dans la fenêtre de l'éditeur, cliquez avec le bouton droit de la souris sur le glyphe du point d'arrêt, puis sélectionnez Actions dans le menu contextuel.

    -ou-

    Dans la fenêtre Points d'arrêt, cliquez avec le bouton droit de la souris sur le glyphe du point d'arrêt, puis sélectionnez Paramètres dans le menu contextuel.

  2. Dans la boîte de dialogue Paramètres du point d'arrêt, sélectionnez l'option Actions.

  3. Dans la boîte de dialogue Afficher un message dans la fenêtre de sortie, entrez une expression.

  4. Sélectionnez Continuer l'exécution du code si vous ne voulez pas que le point d'arrêt interrompe l'exécution. Cette option est active uniquement si vous sélectionnez l’option Actions.

  5. Sélectionnez Fermer pour implémenter les modifications.