Aides requete SQL

Résolu
cs_Believe Messages postés 6 Date d'inscription mercredi 8 mai 2002 Statut Membre Dernière intervention 11 février 2006 - 11 févr. 2006 à 18:31
cs_Believe Messages postés 6 Date d'inscription mercredi 8 mai 2002 Statut Membre Dernière intervention 11 février 2006 - 11 févr. 2006 à 21:49
Je suis debutant et j'ai besoin d'aide. Je fais une requete de ce style :
rs.Open "select * from pneus where Largeur '" & La & "' and Hauteur
'" & Ha & "';", , adOpenDynamic, adLockOptimistic



Je ne n’arrive pas à affecter à une
variable quelconque de la requete la valeur de « tous ». Je sais que « * » veut dire tous mais
dans une variable style : La = "*" ne fonctionne
pas


Dans mon prog je peut étre amené à choisir une valeur ou demander toutes les valeurs de "largeur" avec une certaine "hauteur" ou inversement, en sachant que je peut avoir 5 ou 6 criteres du même style dans une même requete.

merci de votre aide

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
11 févr. 2006 à 19:26
Salut
Comme d'habitude : Si les champs Largeur et Hauteur dans ta database ont été définis en Numériques, il ne faut pas encadrer La et Ha de '
D'autre part, bien que optionnel, il manque le paramètre du nom de la connexion à ta database, après ta requète.
Je te conseille de la rajouter.

sSQL = "select * from pneus " & _
" where Largeur = " & CStr(La) & _
" and Hauteur = " & CStr(Ha)
rs.Open sSQL, maConnexion , adOpenDynamic, adLockOptimistic

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
3
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
11 févr. 2006 à 19:42
Salut,

Pour construire une requête de ce type, une possibilité :

Dim WhereOuAnd As String
Dim rq As String


rq = "select * from pneus"

WhereOuAnd = " WHERE "

If La <> "" Then rq rq & WhereOuAnd & "Largeur '" & La & "'"
WhereOuAnd = " AND "
End If

If Ha <> "" Then rq rq & WhereOuAnd & "Hauteur '" & Ha & "'"
WhereOuAnd = " AND "
End If

' etc ...

rq = rq & clause_where & ";"

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
3
cs_Believe Messages postés 6 Date d'inscription mercredi 8 mai 2002 Statut Membre Dernière intervention 11 février 2006
11 févr. 2006 à 21:49
Merci à vous deux comme quoi : Il veux mieux 2 qui savent qu'un qui cherche..
0
Rejoignez-nous