Menyelesaikan masalah "Pertanyaan Berparameter Menjangkakan Parameter Yang Tidak Dibekalkan" Ralat
Apabila melaksanakan pertanyaan berparameter dalam kod anda, anda mengalami ralat yang menunjukkan bahawa parameter tidak dibekalkan. Untuk menyelesaikan isu ini, mari kita periksa kod dan gunakan pembetulan.
Dalam coretan kod yang disediakan, pertanyaan berparameter sedang digunakan untuk mendapatkan semula rekod daripada pangkalan data berdasarkan parameter carian daripada TextBox2. Walau bagaimanapun, mesej ralat menunjukkan bahawa parameter '@Parameter1' tidak dibekalkan. Untuk membetulkannya, kita perlu menambah dan menetapkan nilai secara eksplisit kepada parameter dalam koleksi 'Parameter' bagi objek arahan.
Pengubahsuaian kod berikut akan menangani perkara ini:
Dim cmd As New SqlCommand cmd.CommandText = "SELECT * FROM borrow WHERE Department LIKE '%' + @Department + '%'" cmd.Connection = con cmd.CommandType = CommandType.Text cmd.Parameters.Add("@Department", SqlDbType.VarChar) If Not TextBox2.Text Is Nothing Then cmd.Parameters("@Department").Value = TextBox2.Text Else cmd.Parameters("@Department").Value = DBNull.Value End If con.Open()
Dalam kod yang diubah suai ini, kami:
DBNull.Value digunakan untuk mewakili nilai nol dalam operasi pangkalan data. Dengan menambahkan semakan ini, kami memastikan bahawa pertanyaan akan dilaksanakan dengan betul walaupun input carian kosong atau batal.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 'Pertanyaan Berparameter Menjangkakan Parameter Yang Tidak Dibekalkan'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!