Rumah >pangkalan data >tutorial mysql >Bolehkah .NET MySqlCommand Menggunakan Pembolehubah Ditakrifkan Pengguna MySQL?

Bolehkah .NET MySqlCommand Menggunakan Pembolehubah Ditakrifkan Pengguna MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-29 22:45:15508semak imbas

Can .NET MySqlCommand Use MySQL User-Defined Variables?

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!

Kenyataan:
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