2 votes

Connexion à une base de données MySQL avec C#

J'utilise :

        if (connection.State != ConnectionState.Open)
        {
            OpenConnection();
        }

y

private bool OpenConnection()
{
    try
    {
        connection.Open();
        return true;
    }
    catch (MySqlException ex)
    {
        //When handling errors, you can your application's response based 
        //on the error number.
        //The two most common error numbers when connecting are as follows:
        //0: Cannot connect to server.
        //1045: Invalid user name and/or password.
        switch (ex.Number)
        {
            case 0:
                Console.WriteLine("Cannot connect to server.  Contact administrator");
                Console.Read();
                break;

            case 1045:
                Console.WriteLine("Invalid username/password, please try again");
                Console.Read();
                break;
        }
        return false;
    }
}

Je reçois toujours System.InvalidOperationException: The connection is already open . cela n'a pas de sens car je vérifie si c'est déjà ouvert.

Merci d'avance.

2voto

McGarnagle Points 56802

Il existe des états de connexion autres qu'ouvert et fermé : interrompue, fermée, en cours de connexion, en cours d'exécution, en cours d'extraction. Vous ne devez essayer d'ouvrir une connexion que si elle est "fermée". Dans le cas contraire, elle doit être traitée différemment.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X