Maison > Article > base de données > Pourquoi mes instructions préparées C# avec MySQL échouent-elles et comment puis-je les corriger ?
Utilisation des instructions préparées en C# avec MySQL
En tentant d'utiliser des instructions préparées dans un programme C#, les développeurs peuvent rencontrer des difficultés. Un problème courant survient lorsque le code de l'instruction préparée est remplacé par une instruction normale, ce qui entraîne une exécution réussie.
Après un examen attentif, il est évident que l'instruction préparée n'est pas configurée correctement. Voici les étapes clés pour utiliser correctement les instructions préparées :
L'exemple suivant illustre l'utilisation corrigée de l'instruction préparée :
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(); }
Dans ce code révisé, les guillemets simples (') entourant les valeurs des paramètres dans la requête sont supprimés. De plus, la méthode Prepare est appelée après l’ajout des paramètres. En respectant ces étapes, les instructions préparées peuvent être utilisées efficacement dans les programmes C# avec MySQL.
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!