Maison > base de données > tutoriel mysql > .NET MySqlCommand peut-il utiliser les variables MySQL définies par l'utilisateur ?

.NET MySqlCommand peut-il utiliser les variables MySQL définies par l'utilisateur ?

Mary-Kate Olsen
Libérer: 2024-11-29 22:45:15
original
499 Les gens l'ont consulté

Can .NET MySqlCommand Use MySQL User-Defined Variables?

.NET MySqlCommand peut-il exploiter les variables définies par l'utilisateur MySQL ?

L'exécution d'une requête MySQL dans .NET à l'aide de MySqlAdapter peut poser des problèmes si la requête utilise variables définies par l'utilisateur.

Requête spécifique Tentative :

L'instruction SQL suivante tente d'attribuer des numéros de ligne à des lignes distinctes :

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

Exception rencontrée :

Lorsque cette requête est exécutée dans .NET, une exception se produit car la variable @rownum est interprétée comme un paramètre, ce qui nécessite une requête explicite. définition.

Solution :

Pour résoudre ce problème, il est nécessaire de préciser que les variables utilisateur sont autorisées dans la chaîne de connexion. Ceci peut être réalisé en ajoutant le paramètre suivant :

;Allow User Variables=True
Copier après la connexion

Chaîne de connexion mise à jour :

sqlConnection.ConnectionString = "Data Source=localhost;Initial Catalog=myDb;Username=myUser;Password=myPwd;Allow User Variables=True";
Copier après la connexion

Informations supplémentaires :

Cette solution est compatible avec les versions plus récentes du connecteur .NET pour MySQL. Pour plus de détails, reportez-vous à ce blog : [Comment utiliser les variables définies par l'utilisateur dans .NET avec MySQL] (blog lié).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal