alladin90
Messages postés91Date d'inscriptionmardi 6 janvier 2009StatutMembreDernière intervention 7 août 2016
-
3 oct. 2013 à 00:04
alladin90
Messages postés91Date d'inscriptionmardi 6 janvier 2009StatutMembreDernière intervention 7 août 2016
-
3 oct. 2013 à 18:48
Bonjour,
Je me sert de ce code pour faire une requete de recherche:
RS.Open "select * from table1 where nom like '%" & Text1.Text & "%' And prenom like '%" & Text2.Text & "%'", DB, adOpenStatic, adLockOptimistic
Mon probleme est : supposont j'ai deux noms: 'al' et 'albert'
si je veux chercher 'al' le code me recupère 'albert' au lieu de 'al'
Merci de m'aider à trouver le bon code
jordane45
Messages postés38145Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention25 avril 2024344 Modifié par jordane45 le 3/10/2013 à 00:09
Bonsoir
Le % est un caractère jocker.
Pour ton cas..Ne met que celui du debut...
Ou n'en met pas du tout.
Ou si tu veux faire une recherche stricte remplace like par =
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 Modifié par ucfoutu le 3/10/2013 à 06:48
Bonjour,
Remplace tes % par * si tu utilises l'opérateur Like
si tu cherches le nom exact, ne pas utiliser Like, mais = (comme dit par jurdane). Mais dans ce cas : pas de joker à mettre, bien évidemment
Vous n’avez pas trouvé la réponse que vous recherchez ?
alladin90
Messages postés91Date d'inscriptionmardi 6 janvier 2009StatutMembreDernière intervention 7 août 2016 3 oct. 2013 à 08:39
Voici le code apres l'utilisation de (=).
Mais malheureusement le résultat est nul.
(aucun nom trouvé) Pourtant je suis certaint que le nom recherché existe dans la bd.
RS.Open "select * from table1" & _
" where nom = '" & Text1.Text & "' " & _
" and prenom = '" & Text2.Text & "'", _
DB, adOpenDynamic, adLockOptimistic
jordane45
Messages postés38145Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention25 avril 2024344 3 oct. 2013 à 08:56
Bonjour,
Si tu affiches la valeur de ta requêtes
Msgbox "select * from table1 where nom = '" & Text1.Text & "' and prenom = '" & Text2.Text &
"'"
Est ce que c'est conforme à ce que tu cherches ?
Peux tu tester cette vrequete retournee par ce msgbox directement dans ta bdd ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 3 oct. 2013 à 09:02
vérifier également qu'aucun des deux champs concernés ne contient un espace, voire un caractère non imprimable et/ou non visible. "Albert " ou " Albert", par exemple , ne sont pas "Albert"
alladin90
Messages postés91Date d'inscriptionmardi 6 janvier 2009StatutMembreDernière intervention 7 août 2016 3 oct. 2013 à 18:48
Merci à vous ucfoutu et jordane45 de votre souci
J'ai testé la requete par la msgbox comme vous m'avez demandé et et j'ai pu voir le nom recherché dans le msgbox.
J'ai aussi vérifié les champs et tout est dans les régles.
Je me sert du méme code pour l'enregistrement des records et ça marche bien mais pour la recherche il ne marche plus.
merci