IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Problème connection à la BDD erreur mysql [Débutant]


Sujet :

Windows Forms

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2018
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Problème connection à la BDD erreur mysql
    Bonjour a tous ,

    Pour mon stage je dois coder une application en C# Windows Form, j'avance plutôt bien je n'ai pas trop de problème mais voila bien quelques heures que je bloque sur ma connection a la BDD ( que j'ai déjà fais 100 fois auparavant sans soucis :/ ).
    En effet j'ai une erreur qui s'affiche "System.InvalidOperationException*: 'Connection must be valid and open.'", j'ai vérifier un peu partout et ca peut venir de tout et n'importe quoi alors je ne sais pas trop quoi faire , j'ai vérifier que toutes mes connections s'ouvrent et se ferment bien etc..

    Voici le code où l'erreur s'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    private void button8_Click(object sender, EventArgs e)
            {
                //VARIABLES 
                int idFormateur;
     
                //RECUPERATION DE L'ID
                MySqlConnection sqlConnection = new MySqlConnection("server =localhost; DATABASE=cv_formateurs; UID=root; PASSWORD=;SslMode=none");
                MySqlCommand cmd = new MySqlCommand();
                cmd.CommandText = "SELECT id FROM formateur WHERE Mail_f like "+'"'+comboBox2.Text+'"';
                cmd.CommandType = CommandType.Text;
                sqlConnection.Open();
                MySqlDataReader reader = cmd.ExecuteReader();
                idFormateur = (int)reader.GetValue(0);
                sqlConnection.Close();
    Je vois vraiment pas d'où ca viens j'ai vérifier et re vérifier :/
    Désolé si c'est une erreur bête ou si elle a déja été régler sur le forum ( j'ai chercher je m'y suis peut être mal pris je suis nouveau ^^ ) mais merci de votre aide !

  2. #2
    Membre du Club Avatar de mathisdu42
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2013
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2013
    Messages : 168
    Points : 64
    Points
    64
    Par défaut
    Salut,

    à mon avis, ton problème vient du fait que tu n'indiques pas à ta commande ce qu'elle doit "lire" soit : ta requête et ta connexion. Essaye ça, je garantis rien mais à mon avis, ça devrait le faire. Une dernière chose, il est fortement conseillé de faire des requêtes paramétrées pour prévenir des injections SQL !


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    int idFormateur;
     
                using (MySqlConnection sqlConnection2 = new MySqlConnection())
                {
                    sqlConnection2.ConnectionString = "server=localhost;Port=3306; userid=root; password=; database=cv_formateurs;";
                    sqlConnection2.Open();
     
                    const string query = "SELECT id FROM formateur WHERE Mail_f=@mail";
                    var cmd2 = new MySqlCommand(query, sqlConnection2);
                    cmd2.Parameters.Add(new MySqlParameter("@mail", MySqlDbType.VarChar));
                    cmd2.Parameters["@mail"].Value = comboBox2.Text;
                    var result = cmd2.ExecuteReader();
     
                    if (result.HasRows)
                    {
                        if (result.Read())
                        {
                            idFormateur = (int)result.GetValue(0);
                        }
                    }
                    sqlConnection2.Close();
     
                }
    Un petit lien : https://msdn.microsoft.com/fr-fr/lib...v=vs.110).aspx


    Edit : Désolé, j'ai pas fait attention au "Résolu".


    Cordialement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de procédure stockée Erreur MySQL 1064
    Par Echap dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 12/06/2014, 17h20
  2. Problème de gestion des erreurs MySQL
    Par Crygamers dans le forum Langage
    Réponses: 2
    Dernier message: 09/07/2012, 13h50
  3. problème Connection à une BDD locale .sdf
    Par diabli73 dans le forum C#
    Réponses: 4
    Dernier message: 27/07/2009, 15h06
  4. [MySQL] Importer BDD, erreur mysql
    Par Jonas7 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/01/2009, 15h47
  5. Problème lors d'une connection à une BDD mysql
    Par sissi25 dans le forum JDBC
    Réponses: 4
    Dernier message: 06/04/2007, 17h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo