Heim >Backend-Entwicklung >C++ >Wie rufe ich eine gespeicherte Prozedur mit Parametern in C# auf?
Frage:
Wie rufe ich eine gespeicherte Prozedur mit Parametern aus meinem C#-Code auf? Ich kann Einfüge-, Aktualisierungs- und Löschvorgänge mithilfe von Befehlszeichenfolgen ausführen, bin mir aber nicht sicher, wie ich mit den gespeicherten Prozeduren umgehen soll.
Dies ist mein aktueller Code, der mithilfe der Befehlszeichenfolge erfolgreich Daten einfügt:
<code class="language-csharp">private void btnAdd_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(dc.Con); SqlCommand cmd = new SqlCommand("Command String", con); da.InsertCommand = new SqlCommand("INSERT INTO tblContacts VALUES (@FirstName, @LastName)", con); da.InsertCommand.Parameters.Add("@FirstName", SqlDbType.VarChar).Value = txtFirstName.Text; da.InsertCommand.Parameters.Add("@LastName", SqlDbType.VarChar).Value = txtLastName.Text; con.Open(); da.InsertCommand.ExecuteNonQuery(); con.Close(); dt.Clear(); da.Fill(dt); }</code>
Antwort:
Um eine gespeicherte Prozedur mit Parametern aufzurufen, können Sie die folgenden Schritte ausführen:
Der folgende aktualisierte Code zeigt, wie die gespeicherte Prozedur sp_Add_contact mit zwei Parametern aufgerufen wird:
<code class="language-csharp">private void button1_Click(object sender, EventArgs e) { using (SqlConnection con = new SqlConnection(dc.Con)) { using (SqlCommand cmd = new SqlCommand("sp_Add_contact", con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@FirstName", txtFirstName.Text); cmd.Parameters.AddWithValue("@LastName", txtLastName.Text); con.Open(); cmd.ExecuteNonQuery(); } } dt.Clear(); da.Fill(dt); }</code>
Um die Lesbarkeit und Wartbarkeit des Codes zu verbessern, wird empfohlen, zum Hinzufügen von Parametern die Methode AddWithValue
zu verwenden, die automatisch auf den Datentyp der Parameter schließt. Bitte stellen Sie sicher, dass Ihre gespeicherte Prozedur sp_Add_contact
tatsächlich existiert und die Parameternamen mit denen in Ihrem Code übereinstimmen.
Das obige ist der detaillierte Inhalt vonWie rufe ich eine gespeicherte Prozedur mit Parametern in C# auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!