Transact-SQL-Debuggerinformationen
Gilt für: SQL Server
Jedes Mal, wenn der Debugger bei einer bestimmten Transact-SQL-Anweisung die Ausführung unterbricht, können Sie den aktuellen Ausführungsstatus in den verschiedenen Debuggerfenstern anzeigen.
Debuggerfenster
Im Debugger-Modus öffnet der Debugger Fenster neben dem Fenster Abfrage-Editor. Der Debugger zeigt alle seine Informationen in den ausgewählten Fenstern an. Jedes Debuggerfenster enthält Registerkarten, durch deren Auswahl Sie bestimmen können, welcher Satz von Informationen im Fenster angezeigt wird. Die Registerkarten Aufrufliste, Breakpoints, Ausnahmeeinstellungen und Ausgabe sind in einem Fenster enthalten. Die Registerkarten Watch1, Watch2, Watch3 und Watch4 sind in einem Fenster enthalten. Die Fenster Threads und Locals werden separat angezeigt.
Hinweis
Die vorherigen Beschreibungen gelten für die Standardpositionen der Debuggerfenster. Sie können eine Registerkarte ziehen, um sie von einem Fenster in ein anderes zu verschieben, oder Sie können die Verankerung einer Registerkarte aufheben, um ein neues Fenster für ausgewählte Registerkarten zu erstellen.
Standardmäßig sind nicht alle dieser Registerkarten oder Fenster aktiv. Um ein bestimmtes Fenster zu öffnen, wählen Sie im Menü Debuggen Windows aus, und wählen Sie dann das Fenster aus, das Sie anzeigen möchten.
Transact-SQL-Ausdrücke
Ausdrücke sind Transact-SQL -Klauseln, die einen einzelnen Skalarwert ergeben, z. B. Variablen oder Parameter. Im Debuggerfenster können die Datenwerte anzeigt werden, die derzeit Ausdrücken auf bis zu fünf dieser Registerkarten oder Fenster zugeordnet sind: Lokal, Überwachen 1, Überwachen 2, Überwachen 3und Überwachen 4.
Das Fenster Lokal zeigt Informationen über die lokalen Variablen im aktuellen Bereich des Transact-SQL-Debuggers an. Der Satz von Ausdrücken, die im Fenster Lokal aufgeführt sind, ändert sich, wenn der Debugger die verschiedenen Teile des Codes durchläuft.
Die Ausdrücke in den vier Überwachungsfenster sind nicht darauf beschränkt, die Bezeichner einer Variablen aufzulisten. Sie können einen Transact-SQL-Ausdruck angeben, dessen Auswertung einen einzelnen Wert ergibt, wie das Hinzufügen einer Zahl zu einer Variablen, oder eine SELECT-Anweisung, deren Auswertung einen einzelnen Wert ergibt. Beispiele:
Der Name einer Variablen, z.B. @IntegerCounter.
Eine arithmetische Operation an einer Variablen, z.B. @IntegerCounter + 1.
Eine Zeichenfolgenoperation an zwei Zeichenvariablen, z. B. @FirstName + @LastName.
Eine SELECT-Anweisung, die einen einzelnen Wert zurückgibt, zum Beispiel SELECT CharCol FROM MyTable WHERE PrimaryKey = 1.
Die vier Überwachungsfenster zeigen Informationen über ausgewählte Variablen und Ausdrücke an. Der Satz von Ausdrücken, die in den Überwachungsfenstern aufgeführt sind, ändert sich erst dann, wenn Sie Ausdrücke entweder der Liste hinzufügen oder aus dieser entfernen.
Zum Hinzufügen eines Ausdrucks zu einem Überwachungsfenster geben Sie den Namen des Ausdrucks in der Spalte Name einer leeren Zeile im Überwachungsfenster ein. Sie können QuickWatch auch im Menü Debuggen auswählen, einen Ausdruck eingeben und dann Überwachung hinzufügen auswählen.
Sie können die Datenwerte für Variablen in den Fenstern Lokal, Überwachungoder Schnellüberwachung festlegen, indem Sie mit der rechten Maustaste auf die Zeile klicken und dann Wert bearbeitenauswählen. Die Wert -Spalten im Fenster Lokal , im Fenster Überwachung und im Dialogfeld Schnellüberwachung unterstützen alle Text-, XML- und HTML-Datenschnellansichten. Die Schnellansichten werden durch einen Vergrößerungsglas-Datentipp ganz rechts neben der Spalte Werte dargestellt. Mithilfe der Schnellansichten können Sie Text-, XML- oder HTML-Datenwerte in Anzeigen für die entsprechenden Datentypen, z. B. XML-Dateien in einem Browserfenster, betrachten.
Wenn Sie im Debugmodus mit der Maus auf einen Bezeichner zeigen, werden in einem QuickInfo -Popupfenster der Name des Ausdrucks und sein aktueller Wert angezeigt. Weitere Informationen finden Sie unter QuickInfo (IntelliSense).
Breakpoints
Im Fenster Breakpoints können Sie die Breakpoints anzeigen und verwalten. Weitere Informationen finden Sie unter Schrittweises Durchlaufen von Transact-SQL-Code.
Aufruflisten
Das Fenster Aufrufliste zeigt den aktuellen Ausführungsort sowie Informationen über die Art und Weise an, in der die Ausführung vom ursprünglichen Editor-Fenster über Transact-SQL-Module (Funktionen, gespeicherte Prozeduren oder Trigger) übergeben wurde, um den aktuellen Ausführungsort zu erreichen. Jede Zeile im Fenster Aufrufliste wird als Stapelrahmen bezeichnet und stellt eines der folgenden Elemente dar:
Den aktuellen Ausführungsort
Einen Aufruf von einem Modul zu einem anderen
Einen Aufruf von einem Editorfenster zu einem Transact-SQL-Modul
Der Stapel ist in umgekehrter Reihenfolge, in der die Module aufgerufen wurden, angeordnet. Der aktuelle Ausführungsort befindet sich oben und der ursprüngliche Aufruf unten im Stapel. Ein gelber Pfeil am linken Rand des Stapelrahmens bezeichnet den Rahmen, in dem der Debugger die Ausführung unterbrochen hat.
Die Spalte Name zeichnet die folgenden Informationen auf:
Das Quellmodul, das die Codezeile enthält, die hinunter zur nächsten Ebene aufgerufen hat
Die Codezeile, die das nächste Modul auf dem Stapel aufgerufen hat
Die Namen, Datentypen und Werte aller Parameter werden aufgelistet, wenn der Anruf an eine gespeicherte Prozedur oder Funktion ging, die Parameter benötigt.
Die Ausdrücke in den Fenstern Locals, Überwachung und Schnellüberwachung werden für den aktuellen Stapelrahmen ausgewertet. Standardmäßig ist der aktuelle Stapelrahmen der oberste Rahmen im Stapel, bei dem der Debugger die Ausführung unterbrochen hat. Wenn Sie einen anderen Stapelrahmen als aktuellen Stapelrahmen angeben, werden die Ausdrücke in den Fenstern Lokal, Überwachungund Schnellüberwachung für den neuen Stapelrahmen neu ausgewertet. Sie können den aktuellen Stapelrahmen wechseln, indem Sie entweder auf einen Rahmen doppelklicken oder auf einen Rahmen klicken und Zu Rahmen wechselnauswählen. Daraufhin werden die Ausdrücke in den Fenstern Lokal, Überwachungund Schnellüberwachung für den neuen Rahmen neu ausgewertet. Wenn der aktuelle Stapelrahmen nicht der oberste Rahmen im Stapel ist, kennzeichnet ein grüner Pfeil am linken Rand des Stapels den aktuellen Stapelrahmen.
Wenn Sie mit der rechten Maustaste auf einen Stapelrahmen klicken und Gehe zu Quellcodeauswählen, wird der Code für diesen Rahmen in einem Abfrage-Editor-Fenster angezeigt. Dieser Rahmen wird jedoch nicht zum aktuellen Rahmen gemacht, und die Inhalte der Fenster Lokal, Überwachung und Schnellüberwachung werden nicht geändert.
Systeminformationen und Transact-SQL-Ergebnisse
Der Debugger listet seine Status- und Ereignismeldungen im Fenster Ausgabe auf. Das Fenster enthält Informationen wie z. B. zum Zeitpunkt, zu dem andere Prozessen debuggt werden oder zu dem Debuggerthreads enden.
Im Debugmodus sind die Registerkarten Ergebnisse und Meldungen nach wie vor im Abfrage-Editor aktiv. Auf der Registerkarte Ergebnisse werden weiterhin die Resultsets aus den Transact-SQL-Anweisungen angezeigt, die während einer Debuggingsitzung ausgeführt werden. Auf der Registerkarte Meldungen werden weiterhin Systemmeldungen angezeigt, wie z. B. die Anzahl betroffener Zeilen, und die Ausgabe von PRINT- und RAISERROR-Anweisungen.