Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Memanggil Prosedur Tersimpan dengan Parameter dalam C#?
Soalan:
Bagaimanakah saya boleh memanggil prosedur tersimpan dengan parameter daripada kod C# saya? Saya boleh melakukan operasi memasukkan, mengemas kini dan memadam menggunakan rentetan arahan, tetapi saya tidak pasti cara mengendalikan prosedur yang disimpan.
Ini ialah kod semasa saya yang berjaya memasukkan data menggunakan rentetan arahan:
<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>
Jawapan:
Untuk memanggil prosedur tersimpan dengan parameter, anda boleh mengikuti langkah berikut:
Kod dikemas kini berikut menunjukkan cara memanggil prosedur tersimpan sp_Add_contact dengan dua parameter:
<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>
Untuk meningkatkan kebolehbacaan dan kebolehselenggaraan kod, adalah disyorkan untuk menggunakan kaedah AddWithValue
untuk menambah parameter, yang secara automatik akan membuat kesimpulan jenis data parameter. Sila pastikan prosedur tersimpan anda sp_Add_contact
benar-benar wujud dan nama parameter adalah konsisten dengan yang terdapat dalam kod anda.
Atas ialah kandungan terperinci Bagaimana untuk Memanggil Prosedur Tersimpan dengan Parameter dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!