Exécution pas à pas du code Transact-SQL
Le débogueur Transact-SQL vous permet de contrôler les instructions Transact-SQL qui sont exécutées dans une fenêtre de l'éditeur de requête du Moteur de base de données. Vous pouvez suspendre le débogueur au niveau d'instructions individuelles, puis afficher l'état des éléments de code à ce stade.
Points d'arrêt
Un point d'arrêt indique au débogueur de suspendre l'exécution à une instruction Transact-SQL spécifique. On appelle basculement le fait de définir un point d'arrêt sur une instruction. Vous pouvez basculer un point d'arrêt sur une instruction Transact-SQL en sélectionnant l'instruction et en effectuant l'une des actions suivantes :
Appuyez sur F9.
Dans le menu Déboguer, cliquez sur Basculer le point d'arrêt.
Dans la fenêtre de l'éditeur de requête, cliquez sur la barre grise à gauche de l'instruction Transact-SQL désirée.
Pour afficher et gérer tous les points d'arrêt ouverts, vous pouvez utiliser la fenêtre Points d'arrêt. La fenêtre Points d'arrêt répertorie des informations telles que la ligne de code sur laquelle se trouve le point d'arrêt. Dans la fenêtre Points d'arrêt, vous pouvez aussi supprimer, désactiver et activer des points d'arrêt. Pour plus d'informations sur la fenêtre Points d'arrêt, consultez Fenêtre Points d'arrêt.
Vous pouvez ouvrir la fenêtre Points d'arrêt de l'une des manières suivantes :
Dans le menu Déboguer, cliquez sur Fenêtres, puis sur Points d'arrêt.
Dans la barre d'outils Déboguer, cliquez sur le bouton Points d'arrêt.
Appuyez sur Ctrl+Alt+B.
Vous pouvez désactiver temporairement un point d'arrêt afin de l'empêcher de suspendre l'exécution du code. Toutefois, la définition reste en place au cas où vous souhaiteriez réactiver le point d'arrêt ultérieurement.
Le tableau suivant répertorie les différentes méthodes à votre disposition pour désactiver, réactiver et supprimer des points d'arrêt.
Action |
Procédure |
---|---|
Désactiver un point d'arrêt individuel |
|
Désactiver tous les points d'arrêt |
|
Réactiver un point d'arrêt individuel |
|
Réactiver tous les points d'arrêt désactivés |
|
Supprimer un point d'arrêt individuel |
|
Supprimer tous les points d'arrêt |
|
[!REMARQUE]
Le débogueur Transact-SQL ne prend pas en charge les fonctionnalités de MicrosoftVisual Studio relatives à la définition des conditions des points d'arrêt ou des nombres d'accès.
Contrôle de l'exécution d'instructions
Dans le débogueur Transact-SQL, vous pouvez spécifier les options suivantes pour exécuter le code Transact-SQL à partir de l'instruction actuelle :
Exécuter le code jusqu'au point d'arrêt suivant.
Effectuer un pas à pas détaillé dans l'instruction suivante.
Si l'instruction suivante appelle une procédure stockée, une fonction ou un déclencheur Transact-SQL, le débogueur affiche une nouvelle fenêtre de l'éditeur de requête contenant le code 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.
Effectuer un pas à pas principal dans l'instruction suivante.
L'instruction suivante est exécutée. Toutefois, si l'instruction appelle une procédure stockée, une fonction ou un déclencheur, le code de module s'exécute jusqu'à ce qu'il se termine, et les résultats sont retournés au code appelant. Si vous êtes certain qu'une procédure stockée ne comporte aucune erreur, vous pouvez faire un pas à pas principal. L'exécution s'arrête à l'instruction qui suit l'appel à la procédure stockée, à la fonction ou au déclencheur.
Effectuer un pas à pas sortant dans une procédure stockée, une fonction ou un déclencheur.
L'exécution s'arrête à l'instruction qui suit l'appel à la procédure stockée, à la fonction ou au déclencheur.
Exécuter le code à partir de l'emplacement actuel jusqu'à l'emplacement actuel du pointeur et ignorer tous les points d'arrêt.
Le tableau suivant répertorie les différentes façons dont vous pouvez contrôler l'exécution des instructions dans le débogueur Transact-SQL.
Action |
Procédure |
---|---|
Exécuter toutes les instructions à partir de l'instruction actuelle jusqu'au point d'arrêt suivant |
|
Effectuer un pas à pas détaillé dans l'instruction ou le module suivant |
|
Effectuer un pas à pas principal dans l'instruction ou le module suivant |
|
Effectuer un pas à pas sortant dans un module |
|
Exécuter le code jusqu'à l'emplacement du curseur actuel |
|
Voir aussi