[Access] Erreur sur insertion [Résolu]

Signaler
Messages postés
45
Date d'inscription
lundi 9 avril 2012
Statut
Membre
Dernière intervention
30 avril 2013
-
Messages postés
45
Date d'inscription
lundi 9 avril 2012
Statut
Membre
Dernière intervention
30 avril 2013
-
slt MarDOS

l'insertion dans la base MS access ne fonction pas le compilateur me donne c message d'erreur "Type de données incompatible dans l'expression du critère."

voila mon code

   private void button2_Click(object sender, EventArgs e)
        {
            int prod;
            
            string des1 = des.Text;
            Int32 pri = Int32.Parse(prix.Text);
            Int32 qt = Int32.Parse(qte.Text);
            bool pr = pro.Checked;
            DateTime dt = this.date.Value.Date;
            int ref1 = Convert.ToInt32(Ref.Text);
            
            if (pr == true)
            {
                prod = 1;
            }
            else
            {
                prod = 0;
            }
            prod = 0;
            string StrCnn @"Provider Microsoft.Jet.OLEDB.4.0; Data Source = D:\BaseArticles.mdb";
            OleDbConnection cnn = new OleDbConnection(StrCnn);
            cnn.Open();
            string StrSql = "UPDATE  Article SET Designation='" + des1 + "',Prix='" + pri + "',Quantite='" + qt + "',Promo='" + prod + "',DatePromo='" + dt + "' WHERE (Ref='" + ref1 +"')";
            OleDbCommand cmd = new OleDbCommand(StrSql, cnn);
            cmd.ExecuteNonQuery();

            MessageBox.Show("Le Article a été bien modifier");
        }
    }
A voir également:

8 réponses

Convert.ToString 

Excusé moi
Messages postés
14790
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
15 mai 2021
155
Bonjour,

Si tes champs sont des numériques, les ' sont inutiles voir même la cause de l'erreur.

Les ' servent juste à délimiter les données pour les champs de type Chaine de caractères, pas pour les nombre.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
45
Date d'inscription
lundi 9 avril 2012
Statut
Membre
Dernière intervention
30 avril 2013

slt MarDOS
oui les champs sont tous de type int dans la base
Messages postés
45
Date d'inscription
lundi 9 avril 2012
Statut
Membre
Dernière intervention
30 avril 2013

cc y'a-t-il une proposition ?
Messages postés
14790
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
15 mai 2021
155
Bonjour,

As-tu retiré les ' donc ?
Et si l'erreur perdure, remets le code mis à jour sur le forum.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
15035
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
14 mai 2021
94
Yop,
Je me suis permis de renommer le topic...


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Je ne sais pas si tu a réussis a régler ton probleme mais tu peux convertir tes type de donné.
Avec ceci
Conver.ToString()
Messages postés
45
Date d'inscription
lundi 9 avril 2012
Statut
Membre
Dernière intervention
30 avril 2013

slt MarDOS

merci la problème est résolu avec la surimpression de '