Maison >base de données >tutoriel mysql >Pourquoi ma chaîne de connexion MySQL échoue-t-elle sur 00webhost et comment puis-je y remédier ?
Question originale :
Lors de l'établissement d'une connexion à une base de données MySQL hébergée par 00webhost, une erreur se produit sur la ligne connection.Open(), indiquant qu'il n'existe aucun hôte MySQL avec les paramètres spécifiés. Malgré la vérification de la chaîne de connexion, elle semble correcte.
Dépannage et solution :
La chaîne de connexion fournie :
string MyConString = "SERVER=mysql7.000webhost.com;" + "DATABASE=a455555_test;" + "UID=a455555_me;" + "PASSWORD=something;";
contient des informations incorrectes propriétés. Pour résoudre le problème, la chaîne de connexion doit être construite à l'aide d'une classe de création de chaîne de connexion dédiée, comme suit :
MySqlConnectionStringBuilder conn_string = new MySqlConnectionStringBuilder(); conn_string.Server = "mysql7.000webhost.com"; conn_string.UserID = "a455555_test"; conn_string.Password = "a455555_me"; conn_string.Database = "xxxxxxxx"; using (MySqlConnection conn = new MySqlConnection(conn_string.ToString())) { using (MySqlCommand cmd = conn.CreateCommand()) { // Handle SQL injection here cmd.CommandText = string.Format("INSERT Test (lat, long) VALUES ({0},{1})", OSGconv.deciLat, OSGconv.deciLon); conn.Open(); cmd.ExecuteNonQuery(); } }
Cette chaîne de connexion modifiée utilise des propriétés nommées pour spécifier les paramètres de connexion, garantissant ainsi leur bon alignement. De plus, la méthode ExecuteScalar() est remplacée par ExecuteNonQuery() pour exécuter correctement l'instruction INSERT.
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!