Je reçois cette erreur dans le projet Visual Studio 2010 C#. J'ai utilisé la version du pilote Mysql 6.8.3.0 pour établir la connexion au serveur mysql (qui a été créé via mysql workbench 6.1) et la connexion au serveur mysql a été établie avec succès (qui a été créée via visual studio) mais une erreur survient lorsque mon logiciel fonctionne. Je recherche sur Internet a révélé que le problème de connexion à distance est le problème. Mais si ma connexion établie bien cela ne peut pas être le problème et selon l'erreur son dire que certains problème dans SQL requête. Mais il s'agit d'une simple instruction select (SELECT * FROM case). Toute solution ou suggestion est appréciée.Erreur dans Mysql dans Visual Studio 2010
using (MySqlDataReader mySqlDataReader = mySqlCommand.ExecuteReader())
dans la section de code suivante.
String connectionString = "server = localhost; user id = XXX; password = XXX; database = XXXX";
MySqlConnection connection = new MySqlConnection(connectionString);
connection.Open();
String searchString = "SELECT * FROM case" ;
using (MySqlCommand mySqlCommand = new MySqlCommand(searchString, connection))
{
// mySqlCommand.Parameters.AddWithValue("@caseId", textBox1.Text);
using (MySqlDataReader mySqlDataReader = mySqlCommand.ExecuteReader())
{
String sb;
sb = mySqlDataReader.GetInt32(0).ToString();
MessageBox.Show(sb);
La partie d'erreur que j'obtiens est celle-ci.
MySql.Data.MySqlClient.MySqlException was unhandled
Message=You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'case' at line 1
Source=MySql.Data
ErrorCode=-2147467259 Number=1064 StackTrace:
at MySql.Data.MySqlClient.MySqlStream.ReadPacket()
at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId)
at MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32& affectedRows, Int64& insertedId)
at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force)
at MySql.Data.MySqlClient.MySqlDataReader.NextResult()
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader()
at CaseFinder.Form1.button1_Click(Object sender, EventArgs e) in
cas est un mot-clé dans une base MySQL – Sajeetharan
Thanx Sajeetharan je ne savais pas que. Cela pourrait être la raison de l'erreur. – user2474358
Cela et votre requête sql manquent un point-virgule de terminaison. MySql nécessite; à la fin de chaque opération. Remplacez par Chaîne searchString = "SELECT * FROM mycase;"; // Renommer le cas en mycase Changer le nom de la table –