web-dev-qa-db-fra.com

Comment voir les valeurs d'une variable de table au moment du débogage dans T-SQL?

Pouvons-nous voir les valeurs (lignes et cellules) dans une variable à valeur table dans SQL Server Management Studio (SSMS) pendant le débogage? Si oui comment?

enter image description here

177
Faiz

Ce lien n'est pas encore implémenté selon ce lien Microsoft Connect: Microsoft Connect

32
rortega
DECLARE @v XML = (SELECT * FROM <tablename> FOR XML AUTO)

Insérez l'instruction ci-dessus à l'endroit où vous souhaitez afficher le contenu de la table. Le contenu de la table sera rendu au format XML dans la fenêtre locale, ou vous pouvez ajouter @v à la fenêtre des montres.

enter image description here

300
kirby

Ce projet https://github.com/FilipDeVos/sp_select a une procédure stockée sp_select qui permet de choisir parmi une table temporaire.

Usage:

exec sp_select 'tempDb..#myTempTable'

Lors du débogage d'une procédure stockée, vous pouvez ouvrir un nouvel onglet et exécuter cette commande pour afficher le contenu de la table temporaire.

17
James Hulse

Dans la procédure stockée, créez une table temporaire globale ## tentable et écrivez une requête d'insertion dans votre procédure stockée qui insère les données de votre table dans cette table temporaire.

Une fois cette opération effectuée, vous pouvez vérifier le contenu de la table temporaire en ouvrant une nouvelle fenêtre de requête. Il suffit d'utiliser "select * from ## tentant"

6
messi19

Utilisez simplement la requête select pour afficher la table varialble, où que vous souhaitiez vérifier.

http://www.simple-talk.com/sql/learn-sql-server/management-studio-improvements-in-sql-server-2008/

1
solairaja

Je suis venu à la conclusion que ce n'est pas possible sans plugins.

0
Faiz

SQL Server Profiler 2014 répertorie le contenu du paramètre de valeur de table. Peut fonctionner dans les versions précédentes aussi. Activer l'événement SP: Starting ou RPC: Completed dans le groupe Procédures stockées et la colonne TextData. Lorsque vous cliquez sur une entrée dans le journal, vous obtenez les instructions d'insertion pour la variable de table. Vous pouvez ensuite copier le texte et l'exécuter dans Management Studio.

Exemple de sortie:

declare @p1 dbo.TableType
insert into @p1 values(N'A',N'B')
insert into @p1 values(N'C',N'D')

exec uspWhatever @PARAM=@p1
0
user3285954