Heim >Backend-Entwicklung >C++ >Wie rufe ich eine gespeicherte Prozedur mit Parametern aus C# auf?

Wie rufe ich eine gespeicherte Prozedur mit Parametern aus C# auf?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-23 12:56:10630Durchsuche

How to Call a Stored Procedure with Parameters from C#?

Ausführung gespeicherter C#-Prozeduren mit Parametern: Ein umfassender Leitfaden

Gespeicherte Prozeduren bieten eine robuste und effiziente Methode zum Durchführen von Datenbankvorgängen wie Einfügungen, Aktualisierungen und Löschungen in Ihren C#-Anwendungen. Dieser Ansatz bietet Leistungsvorteile und eine verbesserte Modularität gegenüber der direkten Ausführung von SQL-Befehlen. Dieses Tutorial zeigt, wie man mit C# eine gespeicherte Prozedur aufruft, die Parameter akzeptiert.

Die gespeicherte Prozedur verstehen

Angenommen, Sie haben bereits eine gespeicherte Prozedur sp_Add_Contact definiert, die zwei Parameter akzeptiert: @FirstName und @LastName. Durch diesen Vorgang werden neue Kontaktdatensätze in Ihre Datenbank eingefügt.

Herstellen der Datenbankverbindung

Erstellen Sie zunächst ein SqlConnection-Objekt, um eine Verbindung zu Ihrer Datenbank herzustellen. Diese Verbindung wird während des gesamten Prozesses genutzt.

<code class="language-csharp">using (SqlConnection con = new SqlConnection(dc.Con)) {
    // Database operations will be performed within this block
}</code>

Vorbereiten des SqlCommand-Objekts

Als nächstes instanziieren Sie ein SqlCommand-Objekt, um die sp_Add_Contact gespeicherte Prozedur darzustellen. Setzen Sie die Eigenschaft CommandType unbedingt auf StoredProcedure, um anzuzeigen, dass Sie mit einer gespeicherten Prozedur und nicht mit einer direkten SQL-Abfrage arbeiten.

<code class="language-csharp">using (SqlCommand cmd = new SqlCommand("sp_Add_contact", con)) {
    cmd.CommandType = CommandType.StoredProcedure;
    // Parameter additions and execution will occur here
}</code>

Hinzufügen von Parametern zum Befehl

Fügen Sie die Eingabeparameter mithilfe der Methode cmd zum Objekt Parameters.Add hinzu. Geben Sie den Parameternamen und den Datentyp (SqlDbType) an und weisen Sie den Wert aus den Steuerelementen der Benutzeroberfläche Ihrer Anwendung zu.

<code class="language-csharp">cmd.Parameters.Add("@FirstName", SqlDbType.VarChar).Value = txtFirstName.Text;
cmd.Parameters.Add("@LastName", SqlDbType.VarChar).Value = txtLastName.Text;</code>

Ausführen der gespeicherten Prozedur

Wenn die Parameter definiert sind, ist die gespeicherte Prozedur zur Ausführung bereit. Verwenden Sie die Methode ExecuteNonQuery, um den Befehl an die Datenbank zu senden und die Änderungen anzuwenden.

<code class="language-csharp">con.Open();
cmd.ExecuteNonQuery();
con.Close();</code>

Daten nach der Ausführung aktualisieren

Nach erfolgreicher Ausführung der gespeicherten Prozedur müssen Sie möglicherweise die in Ihrer Anwendung angezeigten Daten aktualisieren. Verwenden Sie die Operationen Clear und Fill auf Ihrem DataTable, um den aktualisierten Datenbankstatus wiederzugeben.

<code class="language-csharp">dt.Clear();
da.Fill(dt);</code>

Das obige ist der detaillierte Inhalt vonWie rufe ich eine gespeicherte Prozedur mit Parametern aus C# auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn