Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S'applique à :SQL Server
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.
Le débogage T-SQL est disponible dans SQL Server Data Tools pour Visual Studio.
Parcourir le code Transact-SQL pas à pas
Les options suivantes fournies par le débogueur Transact-SQL vous permettent de parcourir le code Transact-SQL quand 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.
Un point d'arrêt spécifie un point auquel vous voulez interrompre l'exécution afin de pouvoir examiner les données. 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 passer au premier point d'arrêt, utilisez Continuer. Vous pouvez également utiliser 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. Vous pouvez modifier les points d’arrêt pour spécifier des actions telles que les conditions dans lesquelles l’exécution doit être interrompue, les informations à imprimer dans la fenêtre Sortie , de même que vous pouvez modifier l’emplacement des points 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. Une nouvelle fenêtre de l'éditeur de requêtes du moteur de base de données s'ouvre et contient le code source du module. La fenêtre est en mode débogage, et l'exécution s'arrête à 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 la façon dont le débogueur vous permet de naviguer dans le code, consultez Pas à pas Transact-SQL code.
Afficher les 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 Observateur. Ces fenêtres affichent actuellement les expressions Transact-SQL 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.
QuickWatch. 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 éditeur de requête affichent les résultats des instructions Transact-SQL précédemment exécutées.
Problèmes connus et limitations
Le débogueur T-SQL s’applique uniquement aux instances SQL Server. Le débogueur ne prend pas en charge le débogage du code Transact-SQL s’exécutant sur Azure SQL Database, Azure SQL Managed Instance ou une base de données SQL dans Fabric.
Dans certaines conditions, la mise en surbrillance de la ligne du débogueur T-SQL et les points d’arrêt peuvent devenir désynchronisées avec le point d’exécution réel lors de l’exécution pas à pas dans un script SQL. Le problème peut apparaître dans plusieurs scénarios, y compris un commentaire en haut du script ou des lignes vides après GO des instructions.
Tâches du débogueur Transact-SQL
| Description de la tâche | Article |
|---|---|
| Décrit comment configurer le débogueur Transact-SQL pour le débogage distant. | Configurer des règles de pare-feu avant d’exécuter le débogueur T-SQL |
| décrit comment démarrer, arrêter et contrôler l'opération de débogage. | Exécuter le débogueur Transact-SQL |
| Décrit comment utiliser le débogueur Transact-SQL pour parcourir le code. | Parcourir le code Transact-SQL pas à pas |
| Décrit comment utiliser le débogueur Transact-SQL pour parcourir le code d'une procédure stockée. | Déboguer des procédures stockées |
| Décrit comment utiliser le débogueur pour afficher des données Transact-SQL (comme des paramètres et des variables) et des informations système. | informations de débogueur Transact-SQL |