SSMS
 sql >> Base de données >  >> Database Tools >> SSMS

Comment afficher les données dans les variables de table pendant la session de débogage dans MS SQL Management Studio 2012 ?

Bien que je ne trouve aucune documentation, nulle part, qui indique explicitement que vous ne pouvez pas inspecter les variables de table, je ne crois pas que ce soit possible. Depuis débogueur Transact-SQL

Les habitants et regarder . Ces fenêtres affichent les expressions Transact-SQL actuellement allouées. Les expressions sont des clauses Transact-SQL qui évaluent une seule expression scalaire . Le débogueur Transact-SQL prend en charge l'affichage des expressions qui font référence aux variables, paramètres ou fonctions intégrées Transact-SQL dont les noms commencent par @@. Ces fenêtres affichent également les valeurs de données actuellement affectées aux expressions.

(Je souligne )

Autrement dit, vous ne pouvez inspecter que les scalaires.

En ce qui concerne votre tentative d'utilisation de la fenêtre Exécution, le Limitations des commandes et fonctionnalités du débogueur dit :

L'immédiat s'affiche, mais vous ne pouvez rien faire d'utile avec, comme définir une variable sur une valeur ou interroger la base de données.

Je n'ai jamais beaucoup utilisé le débogueur ; à chaque fois que j'y jette un coup d'œil, je rencontre des limitations comme celle-ci.

C'est pourquoi j'ai toujours tendance à utiliser les approches "old-skool"/"printf" pour déboguer SQL - incluez un supplément SELECT * s généreusement tout au long du code montrant l'état actuel des tables, et extra PRINT ou RAISERROR des messages qui montrent d'autres états, etc. Ensuite, exécutez simplement le code normalement, jusqu'à ce que vous l'ayez mis en forme.