Anzeigen von Transact-SQL-Debuggerinformationen

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 Debuggermodus öffnet der Debugger zwei Fenster am unteren Rand des SQL Server Management Studio-Fensters. Der Debugger zeigt alle seine Informationen in diesen zwei Fenstern an. Jedes Debuggerfenster enthält Registerkarten, durch deren Auswahl Sie bestimmen können, welcher Satz von Informationen im Fenster angezeigt wird. Das linke Debuggerfenster enthält die Registerkarten Lokal, Überwachen 1, Überwachen 2, Überwachen 3 und Überwachen 4. Das rechte Debuggerfenster enthält die Registerkarten Aufrufliste, Threads, Haltepunkte, Befehlsfenster und Ausgabe.

HinweisHinweis

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 eine Registerkarte abdocken, um ein neues Fenster zu erstellen, das Sie beliebig platzieren können.

Standardmäßig sind nicht alle dieser Registerkarten oder Fenster aktiv. Sie haben die folgenden Möglichkeiten, um ein bestimmtes Fenster zu öffnen:

  • Klicken Sie im Menü Debuggen auf Fenster, und wählen Sie dann das gewünschte Fenster aus.

  • Klicken Sie auf der Symbolleiste Debuggen auf Haltepunkte, und wählen Sie dann das gewünschte Fenster aus.

Transact-SQL-Ausdrücke

Ausdrücke sind Transact-SQL-Klauseln, die einen einzelnen Skalarausdruck ergeben, z. B. Variablen oder Parameter. Im linken 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 3 und Ü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 vier Überwachungsfenster zeigen Informationen über Variablen und Ausdrücke an, die Sie ausgewählt haben. 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.

Mithilfe des Fensters Schnellüberwachung können Sie den Wert eines Transact-SQL-Ausdrucks anzeigen und anschließend diesen Ausdruck in einem Überwachungsfenster speichern. Zum Auswählen eines Ausdrucks in Schnellüberwachung wählen Sie den Namen des Ausdrucks entweder im Feld Ausdruck aus oder geben ihn dort ein.

Zum Hinzufügen eines Ausdrucks zu einem Überwachungsfenster können Sie entweder im Dialogfeld Schnellüberwachung die Option Überwachung hinzufügen auswählen oder den Namen des Ausdrucks in die Namensspalte einer leeren Zeile in einem Überwachungsfenster eingeben.

Sie können die Datenwerte für Variablen in den Fenstern Lokal, Überwachung oder Schnellüberwachung festlegen, indem Sie mit der rechten Maustaste auf die Zeile klicken und dann Wert bearbeiten auswä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.

Haltepunkte

Sie können das Fenster Haltepunkte verwenden, um die aktuell festgelegten Haltepunkte anzuzeigen und zu verwalten. Weitere Informationen finden Sie unter Schrittweises Durchlaufen von Transact-SQL-Code.

Aufruflisten

Das Fenster Aufrufliste zeigt den aktuellen Ausführungsort und Informationen über die Art und Weise an, in der die Ausführung vom ursprünglichen Editorfenster über Transact-SQL-Module (Funktionen, gespeicherte Prozeduren oder Trigger) geleitet 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

  • Wenn der Aufruf an eine gespeicherte Prozedur oder eine Funktion mit Parametern gegangen ist, werden auch die Namen, Datentypen und Werte aller Parameter aufgelistet.

Die Ausdrücke in den Fenstern Lokal, Ü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, Überwachung und 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 wechseln auswählen. Daraufhin werden die Ausdrücke in den Fenstern Lokal, Überwachung und 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 Quellcode auswä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. Hierzu gehören 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. „xx Zeilen betroffen“, und die Ausgabe von PRINT- und RAISERROR-Anweisungen.