Transact-SQL-Debugger

Gilt für:SQL Server

Der Transact-SQL-Debugger ist bei der Fehlersuche in Transact-SQL-Code hilfreich, weil sich mit ihm das Laufzeitverhalten des Codes untersuchen lässt. Nachdem Sie das Fenster des Abfrage-Editors für die Datenbank-Engine in den Debugmodus geschaltet haben, können Sie die Ausführung bei bestimmten Codezeilen anhalten und die Informationen und Daten untersuchen, die von diesen Transact-SQL-Anweisungen verwendet oder zurückgegeben werden.

Diese Funktion arbeitet mit SSMS Version 17.9.1 und früher. T-SQL-Debuggen ist auch in SQL Server Data Tools für Visual Studio verfügbar.

Durchlaufen von Transact-SQL-Code in Einzelschritten

Der Transact-SQL-Debugger stellt die folgenden Optionen bereit, die Sie zum Navigieren durch Transact-SQL-Code verwenden können, wenn sich das Fenster des Abfrage-Editors für die Datenbank-Engine im Debugmodus befindet:

  • Festlegen von Breakpoints für einzelne Transact-SQL-Anweisungen

    Ein Breakpoint gibt einen Punkt an, an dem die Ausführung angehalten werden soll, um Daten zu untersuchen. Wenn Sie den Debugger starten, hält er an der ersten Codezeile im Abfrage-Editor-Fenster an. Um die Ausführung bis zum ersten Breakpoint fortzusetzen, den Sie festgelegt haben, können Sie die Funktion Weiter verwenden. Sie können die Funktion Weiter auch verwenden, um die Ausführung von einer beliebigen Position, an der das Fenster angehalten wurde, bis zum nächsten Breakpoint fortzusetzen. Sie können Breakpoints bearbeiten, um Aktionen anzugeben, wie z. B. die Bedingungen, unter denen der Breakpoint die Ausführung anhalten soll, oder im Fenster Ausgabe auszugebende Informationen. Außerdem können Sie den Ort des Breakpoints ändern.

  • Einen Einzelschritt in die nächste Anweisung ausführen

    Mit dieser Option können Sie Schritt für Schritt durch eine Gruppe von Anweisungen navigieren und dabei deren Verhalten beobachten.

  • Ausführen gespeicherter Prozeduren oder Funktionen im Einzel- oder Prozedurschrittmodus.

    Wenn Sie sicher sind, dass in der gespeicherten Prozedur keine Fehler vorliegen, können Sie sie überspringen. Die Prozedur wird vollständig ausgeführt, und die Ergebnisse werden an den Code zurückgegeben.

    Wenn Sie eine gespeicherte Prozedur oder eine Funktion debuggen möchten, können Sie das Modul im Einzelschrittmodus ausführen. SQL Server Management Studio öffnet ein neues Fenster des Datenbank-Engine-Abfrage-Editors, das mit dem Quellcode für das Modul aufgefüllt wird, schaltet das Fenster in den Debugmodus und hält dann die Ausführung bei der ersten Anweisung im Modul an. Sie können dann durch den Modulcode navigieren, indem Sie z. B. Breakpoints festlegen oder den Code schrittweise durchlaufen.

Weitere Informationen zum Navigieren im Code mithilfe des Debuggers finden Sie unter Schrittweises Durchlaufen von Transact-SQL-Code.

Anzeigen von Debuggerinformationen

Jedes Mal, wenn der Debugger die Ausführung bei einer bestimmten Transact-SQL-Anweisung anhält, können Sie den aktuellen Ausführungsstatus in den folgenden Debuggerfenstern anzeigen:

  • Lokal und Überwachung. In diesen Fenstern werden zurzeit zugeordnete Transact-SQL-Ausdrücke angezeigt. Ausdrücke sind Transact-SQL-Klauseln, die zu einem einzelnen Skalarausdruck ausgewertet werden. Der Transact-SQL-Debugger unterstützt die Anzeige von Ausdrücken, die auf Transact-SQL-Variablen oder -Parameter oder auf die integrierten Funktionen verweisen, deren Namen mit @@ beginnen. Diese Fenster zeigen auch die Datenwerte an, die den Ausdrücken derzeit zugewiesen sind.

  • Schnellüberwachung. In diesem Fenster wird der Wert eines Transact-SQL-Ausdrucks angezeigt. Außerdem können Sie diesen Ausdruck in einem Überwachungsfenster speichern.

  • Breakpoints. In diesem Fenster können die derzeit festgelegten Breakpoints angezeigt und verwaltet werden.

  • Aufrufliste. In diesem Fenster wird der aktuelle Ausführungsort angezeigt. Außerdem zeigt es Informationen über die Art und Weise an, in der die Ausführung vom ursprünglichen Abfrage-Editor-Fenster über Funktionen, gespeicherte Prozeduren oder Trigger geleitet wurde, um den aktuellen Ausführungsort zu erreichen.

  • Ausgabe In diesem Fenster werden verschiedene Meldungen und Programmdaten angezeigt, wie z. B. Systemmeldungen des Debuggers.

  • Ergebnisse und Nachrichten. Diese Registerkarten im Abfrage-Editor-Fenster zeigen die Ergebnisse der zuvor ausgeführten Transact-SQL-Anweisungen an.

Transact-SQL-Debuggertasks

Taskbeschreibung Thema
Beschreibt das Konfigurieren des Transact-SQL-Debuggers für das Remotedebuggen. Konfigurieren von Firewallregeln vor dem Ausführen des Transact-SQL-Debuggers
Beschreibt, wie der Betrieb des Debuggers gestartet, angehalten und gesteuert wird. Ausführen des Transact-SQL-Debuggers
Beschreibt die Verwendung des Transact-SQL-Debuggers zum Ausführen von Code in Einzelschritten. Schrittweises Durchlaufen von Transact-SQL-Code
Beschreibt die Verwendung des Debuggers zum Anzeigen von Transact-SQL-Daten, z. B. Parametern und Variablen, sowie von Systeminformationen. Transact-SQL-Debuggerinformationen

Weitere Informationen

Abfrage- und Text-Editoren (SQL Server Management Studio)