Requête update access en c#

Résolu
dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juin 2007
- 18 mai 2007 à 01:16
romagny13
Messages postés
687
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
27 août 2014
- 19 mai 2007 à 09:51
Je suis newbi en c#
mon probléme est que lorsque je fait une requête update il me donne le message suivants:
"Type de données incompatible dans l'expression du critère."

mon code est assez simple le voila

 string conStr = @"Provider=Microsoft.JET.OLEDB.4.0;" + @"data source=DermatoSoft_DB.mdb";
            dataGridView1.DataSource = null;
            ds = new DataSet();      
            conn = new OleDbConnection(conStr);
            command = conn.CreateCommand();
            conn.Open();
            command.CommandText = "UPDATE patients SET Nom='" + textBox17.Text + "',Prenom ='"+ textBox8.Text                 + "',Date_de_naissance '" + textBox10.Text + "',Adresse'" + textBox2.Text + "',Telephone = '"
                + textBox6.Text + "',Groupe_sanguin ='" + comboBox2.Text + "',Maladie = '" + textBox9.Text
                + "',Date_arrivee ='"+ textBox16.Text + "' where Matricule = " + comboBox3.Text;
            adapter = new OleDbDataAdapter(command);

            adapter.Fill(ds);
              conn.Close();

   merci
A voir également:

9 réponses

cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
99
18 mai 2007 à 14:27
La doc contient des exemples d'utilisation de requêtes paramétrée (par position uniquement avec OleDb) :
http://msdn2.microsoft.com/en-us/library/system.data.oledb.oledbcommand.parameters(vs.80).aspx
http://msdn2.microsoft.com/en-us/library/yy6y35y8(VS.80).aspx

/*
coq
MVP Visual C#
CoqBlog
*/
3
cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
99
18 mai 2007 à 09:00
Salut,


Pour l'erreur je ne sais pas, par contre je peux déjà te dire que tu devrais regarder du côté des requêtre paramétrées au lieu de faire des concat.
Matricule ne sera pas un type chaine par hasard ?

/*
coq
MVP Visual C#
CoqBlog
*/
0
romagny13
Messages postés
687
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
27 août 2014
3
18 mai 2007 à 13:08
tu dois avoir une conversion a faire parmis tes champs(ex: ceratins champs doivent etre de type int et tu passes du texte)
tu peux utiliser Convert
ex : Convert.ToInt32(textbox1.text)
0
dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juin 2007

18 mai 2007 à 13:52
non matricule est un numeroauto en access
je vais l'essayer

   merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juin 2007

18 mai 2007 à 13:53
mais je me demandais comment je peut la faire une requête paramétrer
   merci
0
dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juin 2007

18 mai 2007 à 13:59
bon merci mais ca na pas marché
je croit que ces une chaîne de caractére cette requête donc ca na aucun sens de cinvertir un élement en entier et le concaténer

svp aider moi ,je ne sais plus quoi faire

   merci
0
dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juin 2007

18 mai 2007 à 14:54
je vais voir les site que tu ma donné

   merci
0
dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
12 juin 2007

18 mai 2007 à 15:25
bon j'ai lu les page que tu ma donné
et sincérement je n'ai rien compris
d'un coté parceque je suis nul en anglais, d'un autre  parcequ'il n'y a pas comment faire une requête update

alors si vous pouvez m'aider!!!
   merci
0
romagny13
Messages postés
687
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
27 août 2014
3
19 mai 2007 à 09:51
il ne faut pas mettre les numerauto dans les requetes car justement ils sont générés automatiquement
0