Partager via


Principes de base du débogueur Transact-SQL

Le débogueur Transact-SQL vous permet de détecter les erreurs dans le code Transact-SQL en étudiant le comportement du code au moment de l'exécution. Après avoir défini la fenêtre de l'éditeur de requête du Moteur de base de données en mode débogage, vous pouvez suspendre l'exécution du code au niveau de lignes spécifiques et inspecter les informations et les données qui sont utilisées ou retournées par ces instructions Transact-SQL.

Les options suivantes fournies par le débogueur Transact-SQL vous permettent de parcourir le code Transact-SQL lorsque la fenêtre de l'éditeur de requête du Moteur de base de données est en mode débogage :

  • Définir des points d'arrêt sur des instructions Transact-SQL individuelles.

    Lorsque vous démarrez le débogueur, celui-ci s'arrête à la première ligne de code dans la fenêtre de l'éditeur de requête. Pour exécuter le code jusqu'au premier point d'arrêt que vous avez défini, vous pouvez utiliser la fonction Continuer. Vous pouvez également utiliser la fonction Continuer pour exécuter le code à partir de l'emplacement où la fenêtre est actuellement arrêtée, quel qu'il soit, jusqu'au prochain point d'arrêt.

  • Effectuer un pas à pas détaillé dans l'instruction suivante.

    Cette option vous permet de parcourir un jeu d'instructions une par une et d'observer leur comportement au fur et à mesure que vous avancez.

  • Effectuer un pas à pas détaillé ou principal dans un appel à une procédure stockée ou fonction.

    Si vous êtes certain qu'une procédure stockée ne comporte aucune erreur, vous pouvez faire un pas à pas principal. La procédure est exécutée en entier, et les résultats sont retournés au code.

    Si vous souhaitez déboguer une procédure stockée ou une fonction, vous pouvez effectuer un pas à pas détaillé dans le module. SQL Server Management Studio ouvre une nouvelle fenêtre de l'éditeur de requête du Moteur de base de données remplie avec le code source pour le module, place la fenêtre en mode débogage, puis suspend l'exécution à la première instruction dans le module. Vous pouvez ensuite parcourir le code du module, en définissant par exemple des points d'arrêt ou en exécutant le code pas à pas.

Pour plus d'informations sur les différentes façons dont vous pouvez parcourir le code avec le débogueur, consultez Exécution pas à pas du code Transact-SQL.

Affichage des informations du débogueur

Chaque fois que le débogueur suspend l'exécution du code à une instruction Transact-SQL spécifique, vous pouvez utiliser les fenêtres suivantes du débogueur pour afficher l'état d'exécution actuel :

  • Variables locales et Espion. Ces fenêtres affichent les expressions Transact-SQL actuellement allouées. Les expressions sont des clauses Transact-SQL qui ont pour valeur une expression scalaire unique. Le débogueur Transact-SQL prend en charge l'affichage d'expressions qui font référence à des variables et à des paramètres Transact-SQL, ou les fonctions intégrées dont le nom commence par @@. Ces fenêtres affichent également les valeurs de données qui sont actuellement attribuées aux expressions.

  • Espion express. Cette fenêtre affiche la valeur d'une expression Transact-SQL et vous permet d'enregistrer cette expression dans une fenêtre Espion.

  • Points d'arrêt. Cette fenêtre affiche les points d'arrêt actuellement définis et vous permet de les gérer.

  • Pile des appels. Cette fenêtre affiche l'emplacement d'exécution actuel. Elle fournit également des informations sur la façon dont l'exécution a atteint l'emplacement d'exécution actuel à partir de la fenêtre de l'éditeur de requête d'origine via des fonctions, des procédures stockées ou des déclencheurs.

  • Sortie. Cette fenêtre affiche divers messages et données du programme, notamment des messages système du débogueur.

  • Résultats et Messages. Ces onglets de la fenêtre de l'éditeur de requête affichent les résultats des instructions Transact-SQL exécutées précédemment.

Pour plus d'informations sur la façon d'afficher des informations, consultez Affichage des informations du débogueur Transact-SQL.

Voir aussi

Autres ressources