Heim >Datenbank >MySQL-Tutorial >Kann .NET MySqlCommand benutzerdefinierte MySQL-Variablen verwenden?

Kann .NET MySqlCommand benutzerdefinierte MySQL-Variablen verwenden?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-29 22:45:15410Durchsuche

Can .NET MySqlCommand Use MySQL User-Defined Variables?

Kann .NET MySqlCommand benutzerdefinierte MySQL-Variablen nutzen?

Das Ausführen einer MySQL-Abfrage in .NET mit MySqlAdapter kann zu Herausforderungen führen, wenn die Abfrage verwendet wird Benutzerdefinierte Variablen.

Spezifische Abfrage Versuch:

Die folgende SQL-Anweisung versucht, Zeilennummern unterschiedlichen Zeilen zuzuweisen:

SELECT @rownum := @rownum +1 rownum, t . *
FROM (
  SELECT @rownum :=0
) r, (
  SELECT DISTINCT
    TYPE FROM `node`
  WHERE TYPE NOT IN ('ad', 'chatroom')
)t     

Ausnahme aufgetreten:

Wenn dies der Fall ist Wenn die Abfrage in .NET ausgeführt wird, tritt eine Ausnahme auf, da die @rownum-Variable als Parameter interpretiert wird, was explizit erforderlich ist Definition.

Lösung:

Um dieses Problem zu beheben, muss angegeben werden, dass Benutzervariablen in der Verbindungszeichenfolge zulässig sind. Dies kann durch Hinzufügen des folgenden Parameters erreicht werden:

;Allow User Variables=True

Aktualisierte Verbindungszeichenfolge:

sqlConnection.ConnectionString = "Data Source=localhost;Initial Catalog=myDb;Username=myUser;Password=myPwd;Allow User Variables=True";

Zusätzliche Informationen:

Diese Lösung ist mit neueren Versionen des .NET Connector für MySQL kompatibel. Weitere Einzelheiten finden Sie in diesem Blog: [How to Use User Defined Variables in .NET with MySQL] (verlinkter Blog).

Das obige ist der detaillierte Inhalt vonKann .NET MySqlCommand benutzerdefinierte MySQL-Variablen verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn