Rumah >pangkalan data >tutorial mysql >Bolehkah .NET MySqlCommand Menggunakan Pembolehubah Ditakrifkan Pengguna MySQL?
Bolehkah .NET MySqlCommand Memanfaatkan Pembolehubah Yang Ditakrifkan Pengguna MySQL?
Melaksanakan pertanyaan MySQL dalam .NET menggunakan MySqlAdapter boleh menimbulkan cabaran jika pertanyaan itu menggunakan ditentukan pengguna pembolehubah.
Percubaan Pertanyaan Khusus:
Pernyataan SQL berikut cuba untuk menetapkan nombor baris kepada baris yang berbeza:
SELECT @rownum := @rownum +1 rownum, t . * FROM ( SELECT @rownum :=0 ) r, ( SELECT DISTINCT TYPE FROM `node` WHERE TYPE NOT IN ('ad', 'chatroom') )t
Pengecualian Ditemui:
Apabila pertanyaan ini dilaksanakan dalam .NET, pengecualian berlaku kerana pembolehubah @rownum ditafsirkan sebagai parameter, yang memerlukan takrifan eksplisit.
Penyelesaian:
Untuk menyelesaikan isu ini, adalah perlu untuk menentukan bahawa pembolehubah pengguna dibenarkan dalam rentetan sambungan. Ini boleh dicapai dengan menambah parameter berikut:
;Allow User Variables=True
Rentetan Sambungan Dikemas Kini:
sqlConnection.ConnectionString = "Data Source=localhost;Initial Catalog=myDb;Username=myUser;Password=myPwd;Allow User Variables=True";
Maklumat Tambahan:
Penyelesaian ini serasi dengan versi .NET Connector untuk MySQL yang lebih baharu. Untuk butiran lanjut, rujuk blog ini: [Cara Menggunakan Pembolehubah Ditakrifkan Pengguna dalam .NET dengan MySQL](blog terpaut).
Atas ialah kandungan terperinci Bolehkah .NET MySqlCommand Menggunakan Pembolehubah Ditakrifkan Pengguna MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!