Das Debuggen von gespeicherter Prozeduren in Visual Studio .NET

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 316549 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt zwei Möglichkeiten, dass Sie gespeicherte Prozeduren von SQL Server und die erforderlichen Konfigurationseinstellungen und Schritte für jede Herangehensweise Debuggen können.

Ein Entwickler Visual Studio .NET kann Server-Explorer um gespeicherte Prozeduren von SQL Server unabhängig von Visual Studio-Projekt zu debuggen, oder der Entwickler kann Schritt in den Code der gespeicherten Prozedur direkt aus verwaltetem Code in einem Projekt Visual Basic, Visual C# oder Visual J#.

Option 1: Debuggen einer gespeicherten Prozedur im eigenständigen Modus

  1. Öffnen Sie den Server-Explorer.

    Hinweis : Es ist nicht erforderlich, Hinzufügen einer Datenverbindung mit einer SQL Server arbeiten, da SQL Server auch unter dem Knoten Server aufgeführt sind. Verwenden Sie den Knoten Server in die folgenden Schritte, die jedoch einer Datenverbindung zu Sie SQL Server auf die gleiche Weise verwenden können.
  2. Unter dem Knoten Server im Server-Explorer erweitern Sie Name der SQL Server -Computer, erweitern Sie den Knoten SQL Server , erweitern Sie die SQL Server -Instanz, erweitern Sie den Northwind-Datenbank -Knoten, und erweitern Sie dann den Knoten gespeicherte Prozeduren .
  3. Klicken Sie mit der rechten Maustaste auf die Prozedur " CustOrderHist auf, wobei die Kunden-Nr. gespeichert, und klicken Sie auf In gespeicherte Prozedur springen .
  4. Das Dialogfeld Ausführen der gespeicherten Prozedur geöffnet wird, die Listet die Parameter der gespeicherten Prozedur. Typ ALFKI als Wert für die @ CustomerID Eingabeparameter und klicken Sie dann auf OK .
  5. In der Visual Studio-Entwurfsumgebung öffnet ein Fenster, das den Text der gespeicherten Prozedur anzeigt. Die erste ausführbare Zeile der gespeicherten Prozedur ist hervorgehoben. Drücken Sie F11, um Schritt über die gespeicherte Prozedur zum Abschluss.
  6. Im Fenster Ausgabe wird die folgende Meldung angezeigt, die erfolgreichen Ausführung angibt:
    Das Programm "SQL Debugger: T-SQL" wurde mit Code 0 (0 x 0) beendet.

Option 2: Schritt in eine gespeicherte Prozedur aus verwaltetem code

  1. Erstellen Sie ein neues Visual Basic Windows-Anwendungsprojekt.
  2. Ziehen Sie ein Button -Steuerelement aus der Toolbox auf Form1. Fügen Sie am oberen Rand des Codefensters von Form1 die folgende Codezeile:
    Imports System.Data.SqlClient
    					
  3. Kopieren Sie folgenden Code in der Button1_Click -Ereignisprozedur:

    Hinweis : die Verbindungszeichenfolge bei Bedarf für Ihre Umgebung ändern.
            Dim cn As SqlConnection
            Dim strCn As String
            Dim cmd As SqlCommand
            Dim prm As SqlParameter
            strCn = "Data Source=(local);Initial Catalog=Northwind;" & _
                "Integrated Security=SSPI"
            cn = New SqlConnection(strCn)
            cmd = New SqlCommand("CustOrderHist", cn)
            cmd.CommandType = CommandType.StoredProcedure
            prm = New SqlParameter("@CustomerID", SqlDbType.Char, 5)
            prm.Direction = ParameterDirection.Input
            cmd.Parameters.Add(prm)
            cmd.Parameters("@CustomerID").Value = "ALFKI"
            cn.Open()
            Dim dr As SqlDataReader = cmd.ExecuteReader
            While dr.Read
                Console.WriteLine("Product ordered: {0}", dr.GetSqlString(0))
            End While
            dr.Close()
            cn.Close()
    					
  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt (nicht der Projektmappe) und öffnen Sie die Eigenschaft Seiten. Klicken Sie in der Struktur auf Konfigurationseigenschaften , und klicken auf der Seite Debuggen , um gespeicherte Prozedur Debuggen aktivieren das Kontrollkästchen SQL Server-Debugger .
  5. Legen Sie die folgende Codezeile einen Haltepunkt:
           Dim dr As SqlDataReader = cmd.ExecuteReader
    					
  6. Suchen Sie im Server-Explorer und öffnen Sie die Prozedur " CustOrderHist auf, wobei die Kunden-Nr. gespeichert, wie in Option 1 beschrieben. Klicken Sie mit der rechten Maustaste auf die gespeicherte Prozedur, und klicken Sie auf Gespeicherte Prozedur bearbeiten .
  7. Legen Sie auf der SELECT-Anweisung, die die einzige ausführbare Codezeile einen Haltepunkt in der gespeicherten Prozedur.
  8. Drücken Sie F5, um das Visual Basic-Projekt auszuführen.
  9. Wenn Form1 angezeigt wird, klicken Sie auf die Befehlsschaltfläche . Der Haltepunkt wird der Code ausgeführt, dass Sie vor Aufruf die gespeicherten Prozedur festlegen.
  10. Drücken Sie F11. Code in das Fenster gespeicherte Prozedur von der die ExecuteReader -Methode Schritte Ausführung.
  11. Drücken Sie erneut F11. Die einzige Codezeile in der gespeicherten Prozedur der SELECT-Anweisung ausgeführt wird. Steuerelement zurückgibt, Visual Basic-Projekt, und das Projekt zum Abschluss ausgeführt.
  12. Um den Vorgang fortzusetzen, Schritt durch den Visual Basic-Code nach dem Sie Schritt out of der gespeicherten Prozedur, müssen Sie einen zweiten Haltepunkt im Visual Basic-Code festlegen, nach dem Aufruf der gespeicherten Prozedur. Beispielsweise, können Sie im der Beispielcode in diesem Abschnitt dargestellten den zweiten Haltepunkt, in der folgenden Zeile festlegen:
            While dr.Read
    					

Problembehandlung

  • Um Schritt von Visual Studio den Code in eine gespeicherte Prozedur, müssen Sie aktivieren SQL-Debugger in den Projekteigenschaften auf der Seite Debuggen .
  • Um Schritt durch gespeicherte Prozedurcode müssen Sie einen Haltepunkt in der gespeicherten Prozedur selbst festlegen. Andernfalls wird das Debuggen Schritte über die gespeicherte Prozedur und das Fenster für die gespeicherte Prozedur nicht geöffnet.
  • Um den Vorgang fortzusetzen, Schritt über Visual Studio Code nach dem Debuggen Schritte außerhalb einer gespeicherten Prozedur müssen Sie einen Haltepunkt im Projektcode zu einem Zeitpunkt festlegen, nach der Ausführung der gespeicherten Prozedur. Andernfalls wird der Code zum Abschluss nach dem Debuggen Schritte außerhalb der gespeicherten Prozedur ausgeführt.
  • Setup und Konfiguration Probleme finden Sie im mit dem Titel "Einrichten von SQL-Debuggings" in Visual Studio .NET Abschnitt Dokumentation.

Einschränkungen der gespeicherten Prozedur Debuggen

Nachfolgend eine Liste von Einschränkungen, die beim Debuggen von gespeicherter Prozeduren und führen Sie nicht auftreten, wenn Sie Visual Studio-Code Debuggen auftreten können:
  • Sie können nicht "die Ausführung unterbrechen".
  • Sie können nicht "Bearbeiten und fortfahren."
  • Sie können die Reihenfolge der Ausführung der Anweisung nicht ändern.
  • Obwohl Sie den Wert der Variablen ändern können, können Ihre Änderungen nicht wirksam da die Variablenwerte zwischengespeichert werden.
  • Ausgabe von SQL PRINT-Anweisung wird nicht angezeigt.

Informationsquellen

Weitere Informationen zum Debuggen in Visual Basic 6.0 finden Sie im folgenden Artikel der Microsoft Knowledge Base:
170496Tipps zum Debuggen gespeicherter Prozeduren von Visual Basic
Weitere Informationen der folgenden Microsoft-Website (und im Thema "SQL-Debuggen" in der Visual Studio .NET-Hilfe: Dokumentation):
Debuggen von SQL
http://msdn2.microsoft.com/en-us/library/zefbf0t6(vs.71).aspx

Eigenschaften

Artikel-ID: 316549 - Geändert am: Samstag, 12. Mai 2007 - Version: 5.6
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft ADO.NET (included with the .NET Framework)
  • Microsoft ADO.NET 1.1
  • Microsoft Visual J# .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
Keywords: 
kbmt kbhowtomaster kbsqlclient kbsystemdata KB316549 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 316549
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com