Bagaimana Menggunakan Pernyataan yang Disediakan dengan MySQL dalam C# dengan betul?

Barbara Streisand
Lepaskan: 2024-11-16 13:45:03
asal
807 orang telah melayarinya

How to Properly Use Prepared Statements with MySQL in C#?

Menggunakan Penyata Disediakan dalam C# dengan MySQL

Apabila cuba melaksanakan kenyataan yang disediakan dalam program C#, sesetengah pengguna mungkin menghadapi masalah jika mereka mempunyai tidak memformatkan pertanyaan mereka dengan betul atau menyediakan pernyataan selepas menambah parameter.

Untuk menyelesaikan isu ini, ikut langkah berikut:

  1. Alih keluar petikan tunggal daripada pertanyaan: Dalam kod yang disediakan, pertanyaan disertakan dalam petikan tunggal. Ini tidak perlu dan harus dialih keluar.
  2. Gunakan Sediakan selepas menambah parameter: Sebelum melaksanakan pertanyaan, pernyataan mesti disediakan. Proses ini mencipta rancangan untuk melaksanakan pertanyaan dengan cekap. Letakkan panggilan kaedah Prepare() selepas menambah semua parameter yang diperlukan menggunakan cmd.Parameters.AddWithValue().

Kod yang diperbetulkan sepatutnya kelihatan seperti ini:

private void btnLogin_Click(object sender, EventArgs e)
{
    MySqlCommand cmd = MySqlConn.cmd;
    cmd = new MySqlCommand("SELECT * FROM admin WHERE admin_username=@val1 AND admin_password=PASSWORD(@val2)", MySqlConn.conn);
    cmd.Parameters.AddWithValue("@val1", tboxUserName.Text);
    cmd.Parameters.AddWithValue("@val2", tboxPassword.Text);
    cmd.Prepare();

    MySqlDataReader res = cmd.ExecuteReader();
    if (!res.HasRows) { MessageBox.Show("Error! "); res.Close(); return; }
    else
    {
        //do something
    }
    res.Close();
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana Menggunakan Pernyataan yang Disediakan dengan MySQL dalam C# dengan betul?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan