sql >> Database >  >> Database Tools >> SSMS

Hoe gegevens in tabelvariabelen bekijken tijdens debugging-sessie in MS SQL Management Studio 2012?

Hoewel ik nergens documentatie kan vinden waarin expliciet staat dat je tabelvariabelen niet kunt inspecteren, geloof ik niet dat het mogelijk is. Van Transact-SQL Debugger

Localisten en Kijk . In deze vensters worden momenteel toegewezen Transact-SQL-expressies weergegeven. Expressies zijn Transact-SQL-clausules die resulteren in een enkele, scalaire expressie . De Transact-SQL-foutopsporing ondersteunt weergave-expressies die verwijzen naar Transact-SQL-variabelen, parameters of de ingebouwde functies waarvan de naam begint met @@. Deze vensters tonen ook de gegevenswaarden die momenteel aan de uitdrukkingen zijn toegewezen.

(Mijn nadruk )

Dat wil zeggen, u kunt alleen scalairen inspecteren.

Wat betreft uw poging om het onmiddellijke venster te gebruiken, de Beperkingen op Debugger-commando's en -functies zegt:

De Onmiddellijke venster wordt weergegeven, maar u kunt er niets nuttigs mee doen, zoals het instellen van een variabele op een waarde of het opvragen van de database.

Ik heb de debugger nooit echt veel gebruikt - elke keer als ik erin heb gekeken, kom ik dergelijke beperkingen tegen.

Dat is waarom ik nog steeds de neiging heb om "old-skool"/"printf"-benaderingen te gebruiken om SQL te debuggen - voeg extra SELECT * toe s royaal door de code die de huidige staat van tabellen toont, en extra PRINT of RAISERROR berichten die andere statussen tonen, enz. En voer de code dan gewoon normaal uit, totdat je hem in vorm hebt geslagen.



  1. phpMyAdmin kan database niet exporteren

  2. MySQL-fout:dubbele invoer voor primaire sleutel

  3. 999,99 Waarde voor 1138 In Mysql/PhP Mijn Admin

  4. ALTER DATABASE is mislukt omdat er geen vergrendeling op de database kon worden geplaatst