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 :

Insertion dans une table [Fait]


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    254
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 254
    Par défaut Insertion dans une table
    Bonsoir,

    Je ne peut pas insérer des lignes dans ma table, l'erreur est la suivante:

    column count doesn't match value row1.

    j'ai vérifié les champs, j'ai tous initialisé, mais c'est toujours : column count doesn't match value row1.

    Svp aidez moi à trouver l'erreur:

    voici mon code:

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
        string strConn = "Server = localhost; database = databasepsy; uid= root; pwd = root";
    	MySqlConnection cnx = new MySqlConnection();
            MySqlDataAdapter MyAdapter = new MySqlDataAdapter();
     
            string premConsult = "";
            string sexe = "";
            string respLegal = "";
     
    	//....
     
    	private void btnSavePatient_Click(object sender, EventArgs e)
            {
                string nom = txtBnom.Text;
                string prenom = txtbprenom.Text;
                string dateNaissance = dateTimePickerNaissance.Text;
                string age = txtBage.Text;
                string datPremConsul = dateTimePickerPremCons.Text;
                string datDernConsul = dateTimePickerDernCons.Text;
                string nbreConsul = txtBnbreCons.Text;
                string etatCivil = comboEtatCivil.Text;
                string nomConjoint = txtBnomConj.Text;
                string adress = txtBAdress.Text;
                string cdPostal = txtBcodPost.Text;
                string ville = txtBVille.Text;
                string pays = txtBPays.Text;
                string telMaison = txtBtelMaison.Text;
                string telTravail = txtBTelTrav.Text;
                string autreTel = txtBAutrTel.Text;
                string gsm = txtBGsm.Text;
                string adressePar = txtBAdressePar.Text;
                string Note = txtBNote.Text;
                string ModVie = txtBModVie.Text;
                string nivSocial = comboNiveauSocial.Text;
                string tuteur = txtBTuteur.Text;
     
    	    string MySQLCmdEnregistrer = "INSERT INTO patient(id_patient,nom,prenom,date_naissance,age,date_prem_cons,date_dern_cons,nbre_cons,etat_civil,nom_conjoint,adresse,code_postal,ville,pays,tel_maison,tel_travail,autres_tel,gsm,adresse_par,note,sexe,mode_vie,niveau_soscial,responsable_legal,tuteur) VALUES( '' ,'" + nom + "','" + prenom + "','" + dateNaissance + "','" + age + "','" + premConsult + "','" + datPremConsul + "','" + datDernConsul + "','" + nbreConsul + "','" + etatCivil + "','" + nomConjoint + "','" + adress + "','" + cdPostal + "','" + ville + "','" + pays + "','" + telMaison + "','" + telTravail + "','" + autreTel + "','" + gsm + "','" + adressePar + "','" + Note + "','" + sexe + "','" + ModVie + "','" + nivSocial + "','" + respLegal + "','" + tuteur + "')";
     
                MySqlCommand cmd = new MySqlCommand(MySQLCmdEnregistrer, cnx);
     
    	    if (nom == "" || prenom == "" || dateNaissance == "" || datPremConsul == "" || etatCivil == "" || ModVie == "")
                {
                    MessageBox.Show("Vous devez remplir tous les champs marqué par * ");
                }
                else
                {
     
                    try
                    {
                        cnx.ConnectionString = strConn;
                        cnx.Open();
                        MessageBox.Show("Connection réussie");
     
                        int nombre = cmd.ExecuteNonQuery();
                        if (nombre != 0)
                        {
                            MessageBox.Show("Un patient a été bien enregistré");
                            txtBnom.Text = "";
                            txtbprenom.Text = "";
                            chckBPremCons.Checked = false;
                            comboEtatCivil.Text = "";
                            txtBnomConj.Text = "";
                            txtBAdress.Text = "";
                            txtBcodPost.Text = "";
                            txtBVille.Text = "";
                            txtBPays.Text = "";
                            txtBtelMaison.Text = "";
                            txtBTelTrav.Text = "";
                            txtBAutrTel.Text = "";
                            txtBGsm.Text = "";
                            txtBAdressePar.Text = "";
                            txtBNote.Text = "";
                            txtBModVie.Text = "";
                            txtBTuteur.Text = "";
                            txtBnom.Focus();
                        }
     
                        cnx.Close();
     
                    }
     
                    catch (Exception ex)
                    {
                        MessageBox.Show("Problème de connection " + ex.Message);
                    }
                }
     
    //.....
     
                private void txtBage_TextChanged(object sender, EventArgs e)
            {
                int agecalcule = int.Parse(txtBage.Text);
                if (agecalcule > 20 || (chckBWiRespLegal.Checked) == false)
                {
                    labelRespLegal.ForeColor = System.Drawing.Color.Gray;
                    labelTuteur.ForeColor = System.Drawing.Color.Gray;
                    chckBWiRespLegal.Enabled = false;
                    chckBNonRespLegal.Enabled = false;
                    txtBTuteur.Enabled = false;
     
                }
                else if (agecalcule < 20 && (chckBWiRespLegal.Checked) == true)
                {
                    labelRespLegal.ForeColor = System.Drawing.Color.Black;
                    labelTuteur.ForeColor = System.Drawing.Color.Black;
                    txtBTuteur.Enabled = true;
                    respLegal = txtBTuteur.Text;
                }
            }
     
            private void chckBWiRespLegal_CheckedChanged(object sender, EventArgs e)
            {
                if (chckBWiRespLegal.Checked== true)
                chckBNonRespLegal.Checked = false;
                else
                    chckBNonRespLegal.Checked = true;
            }
     
            private void chckBNonRespLegal_CheckedChanged(object sender, EventArgs e)
            {
                if (chckBNonRespLegal.Checked == true)
                    chckBWiRespLegal.Checked = false;
                else
                    chckBWiRespLegal.Checked = true;
     
            }
            public int GetAge(DateTime DateDeNaissance)
            {
    		int age = DateTime.Now.Year - DateDeNaissance.Year;
    		DateTime DateAnniv = new DateTime(DateTime.Now.Year, DateDeNaissance.Month, DateDeNaissance.Day);
    		if (DateAnniv > DateTime.Now)
    		age--;
     
                return age;
            }
     
    	 private void dateTimePickerNaissance_ValueChanged(object sender, EventArgs e)
            {
                DateTime DateNaiss = dateTimePickerNaissance.Value;
     
                txtBage.Text= (GetAge(DateNaiss)).ToString();
     
            }
      }
    }
    Merci infiniment.

  2. #2
    Membre éprouvé Avatar de bobmidou
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2008
    Messages : 121
    Par défaut
    salut

    vérifie si tu n'a pas de virgule dans les valeurs que tu inseres car si oui le SGBD le prend comme champs qui doit exister dans la table. par exemple si il y a une virgule dans le textbox de l'adresse ça ne marchera pas

    comme '34, rue de la concorde' alors ici il doit comprendre qu'il y a deux champs 34 et rue de la concorde.

    sinon utilise les requêtes parametrées comme avait dit tomlev
    alors vérifie cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ...VALUES( '' ,'" + nom + "','" + prenom + "','" + dateNaissance + "','" + age + "','" + premConsult + "','" + datPremConsul + "','" + datDernConsul + "','" + nbreConsul + "','" + etatCivil + "','" + nomConjoint + "','" + adress + "','" + cdPostal + "','" + ville + "','" + pays + "','" + telMaison + "','" + telTravail + "','" + autreTel + "','" + gsm + "','" + adressePar + "','" + Note + "','" + sexe + "','" + ModVie + "','" + nivSocial + "','" + respLegal + "','" + tuteur + "')";

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    254
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 254
    Par défaut
    je commence juste à essayer, et j'ai pas tapé de vergules dans mes champs, juste des lettres et chiffres,..;

    Comment on fait pour les requêtes paramètrées svp.

    ça sera ma dernière question pour ce soir, si ça vous géne pas, un petit exemple. et Merci beauuucoup BobMidou.

  4. #4
    Membre éprouvé Avatar de bobmidou
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2008
    Messages : 121
    Par défaut
    salut

    tomlev t'avais donné un lien dans ton avant dernier post:

    http://johannblais.developpez.com/tu...s-donnees/#LIV

    bonne chance

    Si tu continues sur ton exemple vérifie bien tous les champs s 'il ont une virgule car je pense que ton erreur veut dire qu'il y a plus de champs ou moins peut être.


  5. #5
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    254
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 254
    Par défaut
    Ok, merci, ça prendra peut etre beaucoup plus de temps, mais ça pourras résoudre mon problème, et me faire apprendre la bonne pratique

    Je vais essayer ça.

  6. #6
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    254
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 254
    Par défaut
    Ma requête sera comme ça?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                maCommande.CommandText = "INSERT INTO matable(idtab1,attribut1,attribut2) VALUES(@idtab1,@attribut1,@attribut2)";

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

Discussions similaires

  1. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05
  2. [interbase6]probleme d'insertion dans une table
    Par macadam314 dans le forum Bases de données
    Réponses: 10
    Dernier message: 22/02/2005, 14h21
  3. [Sybase] Temps d'une insertion dans une table
    Par vsavoir dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 14/02/2005, 10h04
  4. Extraction d'un .txt et Insertion dans une table
    Par PoPmiSiR dans le forum Access
    Réponses: 8
    Dernier message: 28/10/2004, 19h13
  5. Détection insertion dans une Table
    Par abelman dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 06/07/2004, 14h24

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