Probleme de Like *

system04 Messages postés 5 Date d'inscription mardi 27 juillet 2010 Statut Membre Dernière intervention 30 juillet 2010 - 29 juil. 2010 à 22:39
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 30 juil. 2010 à 08:43
Bonjour

J'ai un problème sur une requête de recherche d'un champ dans une table
le requête select * from Client where nom_Cl like 'Ossa*'
ça marche bien avec Acces mais quand elle est utilisée dans vb.net(2008) ne donne pas de résultat
select * from Client where nom_Cl like '" & textBox.txt & "*'

Merci d'avance pour vos réponses

13 réponses

NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
29 juil. 2010 à 23:00
ICONIC FIGURE

C'est normal!!
Tu oubliés les " donc,la requête est
sql="select * from Client where nom_Cl like '" & textBox.txt & "*'" 
0
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
29 juil. 2010 à 23:39
Salut
En SQL, le * utilisé dans un Like est à remplacer par % (et le ? par le _ )
sql="select * from Client where nom_Cl like '" & textBox.txt & "%'" 

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)
0
cs_fonio Messages postés 56 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 15 février 2013 1
30 juil. 2010 à 02:08
LIKE '%" + chaine_string + "%'"
0
system04 Messages postés 5 Date d'inscription mardi 27 juillet 2010 Statut Membre Dernière intervention 30 juillet 2010
30 juil. 2010 à 02:13
Bonsoir
Jack j'essayé avec % me ça marche pas avec liaison vb.net acces.
cmd.CommandText = "select nom_client from client where nom_client='" + Me.ComboBox1.Text + "%'"
dr = cmd.ExecuteReader
MsgBox(cmd.CommandText.ToString):::>( select nom_client from client where nom_client=Ex% )
MsgBox(dr.Item(0).ToString):::>(Aucun donnée n'existe poue la ligne/colonne)

Merci d'avance
0

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

Posez votre question
NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
30 juil. 2010 à 02:18
ICONIC FIGURE

la concaténation des chaînes se fait par "&" et non par "+".donc remplace le + par &
0
system04 Messages postés 5 Date d'inscription mardi 27 juillet 2010 Statut Membre Dernière intervention 30 juillet 2010
30 juil. 2010 à 02:21
c'est pa grave mon ami ça marche avec + et &, le pb est la requête ça marche ds le cas de liaison vb.net Sql contrairement ds le cas de vb.net acces.
0
NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
30 juil. 2010 à 02:22
ICONIC FIGURE

et en plus il faut mettre like et non "=".
la requête est:
"select * from Client where nom_Cl like '" & Me.ComboBox1.Text & "%'" 
0
NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
30 juil. 2010 à 02:31
ICONIC FIGURE

j'ai essayé et la requête fonctionne sans problème.
0
system04 Messages postés 5 Date d'inscription mardi 27 juillet 2010 Statut Membre Dernière intervention 30 juillet 2010
30 juil. 2010 à 02:44
"select nom_client from client where nom_client like '" & Me.ComboBox1.Text & "%'" ne fonctionne pas
La requête est donnée la résultat quand j'ai écrit le nom exact de client, donc le problème ds le chiffre %
en + ds acces mode sql j'essayé avec la requête
select nom_client from client where nom_client like 'Ex*'
elle fonctionne sans pb et elle donnée tous les enregistrements commençant par la lettre Ex.
0
NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
30 juil. 2010 à 02:57
ICONIC FIGURE

ta requête,tu doit l'exécuter sous access ou sous vb.net?
Parce que là,je ne te comprends plus...
0
system04 Messages postés 5 Date d'inscription mardi 27 juillet 2010 Statut Membre Dernière intervention 30 juillet 2010
30 juil. 2010 à 03:02
Je doit exécuter la requête sous Vb.net et la base de donné créer par access.
0
NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
30 juil. 2010 à 03:11
ICONIC FIGURE

Tu es sûr d'avoir bien écrit la requête qu'on t'a donné?
parce que chez moi ça marche sans problème.dommage que je ne sache pas comment mettre une image à ta disposition.
Mais si toi,tu peux mettre une image pour indiquer où ça cloche,ce serait très intéressant et je pourrais t'aider plus facilement.
0
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
30 juil. 2010 à 08:43
Access, SQL Server, Oracle ... tout ce que tu veux.
On parle ici de syntaxe SQL et il n'en existe qu'une seule !
La syntaxe universelle est monChamp Like '%le texte%'

Il faut savoir que l'opérateur Like fait une comparaison complète de la chaine --> les minuscules et majuscules ont leur importance.
As-tu vérifier ?
0
Rejoignez-nous