Requête update access en c# [Résolu]

Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Dernière intervention
12 juin 2007
- - Dernière réponse : romagny13
Messages postés
710
Date d'inscription
lundi 10 janvier 2005
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
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
88
3
Merci
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
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 123 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
88
0
Merci
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
*/
Commenter la réponse de cs_coq
Messages postés
710
Date d'inscription
lundi 10 janvier 2005
Dernière intervention
27 août 2014
2
0
Merci
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)
Commenter la réponse de romagny13
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Dernière intervention
12 juin 2007
0
Merci
non matricule est un numeroauto en access
je vais l'essayer

   merci
Commenter la réponse de dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Dernière intervention
12 juin 2007
0
Merci
mais je me demandais comment je peut la faire une requête paramétrer
   merci
Commenter la réponse de dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Dernière intervention
12 juin 2007
0
Merci
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
Commenter la réponse de dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Dernière intervention
12 juin 2007
0
Merci
je vais voir les site que tu ma donné

   merci
Commenter la réponse de dinosors_evolution
Messages postés
14
Date d'inscription
vendredi 29 avril 2005
Dernière intervention
12 juin 2007
0
Merci
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
Commenter la réponse de dinosors_evolution
Messages postés
710
Date d'inscription
lundi 10 janvier 2005
Dernière intervention
27 août 2014
2
0
Merci
il ne faut pas mettre les numerauto dans les requetes car justement ils sont générés automatiquement
Commenter la réponse de romagny13

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.