[Access] Erreur sur insertion [Résolu]

marwenebhar 45 Messages postés lundi 9 avril 2012Date d'inscription 30 avril 2013 Dernière intervention - 28 oct. 2012 à 19:45 - Dernière réponse : marwenebhar 45 Messages postés lundi 9 avril 2012Date d'inscription 30 avril 2013 Dernière intervention
- 5 nov. 2012 à 19:41
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");
        }
    }
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
3
Merci
Convert.ToString 

Excusé moi

Merci thefolin 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de thefolin
NHenry 14272 Messages postés vendredi 14 mars 2003Date d'inscriptionModérateurStatut 15 octobre 2018 Dernière intervention - 28 oct. 2012 à 20:05
0
Merci
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
Commenter la réponse de NHenry
marwenebhar 45 Messages postés lundi 9 avril 2012Date d'inscription 30 avril 2013 Dernière intervention - 28 oct. 2012 à 20:46
0
Merci
slt MarDOS
oui les champs sont tous de type int dans la base
Commenter la réponse de marwenebhar
marwenebhar 45 Messages postés lundi 9 avril 2012Date d'inscription 30 avril 2013 Dernière intervention - 28 oct. 2012 à 21:20
0
Merci
cc y'a-t-il une proposition ?
Commenter la réponse de marwenebhar
NHenry 14272 Messages postés vendredi 14 mars 2003Date d'inscriptionModérateurStatut 15 octobre 2018 Dernière intervention - 29 oct. 2012 à 00:04
0
Merci
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
Commenter la réponse de NHenry
BunoCS 14173 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 15 octobre 2018 Dernière intervention - 29 oct. 2012 à 17:48
0
Merci
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...
Commenter la réponse de BunoCS
0
Merci
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()
Commenter la réponse de thefolin
marwenebhar 45 Messages postés lundi 9 avril 2012Date d'inscription 30 avril 2013 Dernière intervention - 5 nov. 2012 à 19:41
0
Merci
slt MarDOS

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

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.