Requete sql

tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005 - 17 févr. 2005 à 16:28
SpideyCodeWarrior Messages postés 9 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 5 janvier 2024 - 21 févr. 2005 à 10:17
bonjour à tous

Je veut faire une requete sql a partir sur une table.

J'ai un objet data qui ouvre une table access.
Je veux afficher tous les dupont de la table client.
J'ai un objet texte ou j'écris le nom dupont

Voici mon code:

Private Sub cmdcherche_Click()
SQL = "select * from Client where nom= " + txtnom.Text
Data1.RecordSource = SQL
Data1.Refresh
tableau.Refresh
End Sub

le programme plante sur le ligne "Data1.refresh"
il indique :
"erreur d'execution 3061
trop peu de paramètres.1 attendu"

Merci de m'aider

9 réponses

cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
17 févr. 2005 à 16:59
"select * from Client where nom= '" & txtnom.Text &"'"

It@li@
0
SpideyCodeWarrior Messages postés 9 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 5 janvier 2024
18 févr. 2005 à 00:17
Pour être encore plus complet, prévois un nom où il y aurait un apostrophe:
select * from Client where nom= '" & txtnom.ToString.Replace("'", "''")
&"'"

C
warrior
d
Spidey
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
18 févr. 2005 à 08:53
>>SpideyCodeWarrior Ca n'ira pas car en remplaçant les ' par des " il ne trouvera jamaid'enregistrement mêe si ils existent !

It@li@
0
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005
18 févr. 2005 à 11:56
merci ITALIA sa marche

Mais comment fait tu pour faire une requete sur plusieur critère.

example j'ai un objet text nom, un objet text prenom , un objet text age un objet text ville.

Comment faire un code pour avoir une requete dinamique celon les criteres choisi dans les objet text..
Le chois des critère peux changer comme avoir que le nom de renseigné ou renseigner la ville et les ages ...

merci
0

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

Posez votre question
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
18 févr. 2005 à 13:04
Quand ça Marche on coches reponse acceptée !!

Filtre sur plusieurs Champs :

"select * from Client where nom= '" & txtnom.Text &"' AND Prenom= '" & txtprenom.Text &"' AND Ville= '" & txtville.Text &"'"

pour un champ qui est de type Numérique dans ta Base, il faut enlever les simple cote :

"select * from Client where age= " & txtage.Text &""

It@li@
0
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005
18 févr. 2005 à 14:35
Je suis peux etre male exprimer

Je fais un formulaire recherche sur une base clientelle.

J'ai plusieur objet text qui son Nom Prénom age adresse numéro de tel

j'ai écris ma requete avec tous les champs mais dans l'execution j'ai un résultat
vide car je doit renseigner tous les objets textes. Comment fait mon code pour
que quand je saisis un nom dans l'objet text nom sa fasse bien un
select * from client where nom=dupont et non
select * from client where nom=dupont and prénom="" and age= ...

Merci
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
18 févr. 2005 à 14:54
Tu as quel champs Obligatoires ?

It@li@
0
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005
18 févr. 2005 à 14:59
je ne aucun champs obligatoire je veux faire un select * from client where +
les critères que je choisi en remplisant les objets texte
0
SpideyCodeWarrior Messages postés 9 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 5 janvier 2024
21 févr. 2005 à 10:17
J'apporte une petite précision à ce que j'avais dit plus haut car cela à été mal interprété.
select * from Client where nom= '" & txtnom.ToString.Replace("'", "''") &"'"

Il s'agit de remplacer un apostrophe par deux et pas par un guillemet comme on pourrait le croire dans mon exemple.

J'invite n'importe qui d'ailleurs lorsque vous faites une sql à prévoir cela immédiatement. Vous devrez un jour effectuer une recherche sur un nom qui contiendra un apostrophe et si celui n'est pas doublé la requête plantera.

C
warrior
d
Spidey
0
Rejoignez-nous