Requête Select avec like

ramy04804001
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
- 20 juin 2010 à 19:38
ramy04804001
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
- 21 juin 2010 à 22:38
Salut ,

je fait une requête sélect ou je veut récupérer des données sauf que le contenu du champs mot_clé contient le mot taper par l'utilisateur voici ma requête :

String requeteSelect ="select * from texte where mot_clé like '"+cbx_mc.getSelectedItem().toString()+"'" ;

Merci.

7 réponses

ramy04804001
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
1
20 juin 2010 à 20:30
Salut,

j'ai trouver cette solution mais malheuresement toujours elle donner la solution sur le premier champs selectionner et non pas d'autre au centre et a la fin du chaine voici ma requete :

String requeteSelect ="select * from DOC_XML where Numero='"+txt_num.getText()+"' or Date= '"+date.getDate()+/*"' or Nom= '"+cbx_typ.getSelectedItem().toString()+*/"' or Mot_Clé like '%"+cbx_mc.getSelectedItem().toString()+"%'";

merci bien
0
nhervagault
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
35
21 juin 2010 à 13:39
Salut,

Peux-tu mieux expliquer?

utilises les requêtes paramétrées aussi c'est mieux pour la compréhension
la sécurité et les performances.
lien vers le JDK

si je comprends bien
/*"' or Nom= '"+cbx_typ.getSelectedItem().toString()+*/

est en commentaire (utilises la balise code)

Donc tu as 3 conditions
Mot_Clé like '%"+cbx_mc.getSelectedItem().toString()+"%'; 

Numero='"+txt_num.getText()+"' 

Date= '"+date.getDate()+'


Evites d'utiliser un mot du langage comme noms de colonnes Date
Evites d'utiliser des accents dans les noms de colonnes.

Merci



Merci
0
ramy04804001
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
1
21 juin 2010 à 21:36
Salut,

bon tous marche bien mais mon problème c au niveau de la condition :
Mot_Clé like '%"+cbx_mc.getSelectedItem().toString()+"%';

le contenu de mot_clé c en faite une chaine de caractère caractériser par un ensemble des chaine trouve dans le combo cbx_typ cad que chaque chaine choisi c trouver dans mot_clé malheureusement lorsque je choisi par exemple une mot de la chaine trouver au centre ou bien a la fin le programme ne passe pas par contre au debut tourne bien cad sauf le premier mot .

merci
0
nhervagault
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
35
21 juin 2010 à 21:50
Je ne comprends pas trop ce que tu dis.

Tu as quoi comme comportement :

Prends un exmple pour expliquer plutot que des mots c'est plus parlant
%TOTO% -->
ATOTOB --> OK
ATOTO --> KO
TOTOB --> KO
TOTO --> KO

C'est ca que tu as ??

Tu utilises quoi comme base de données?

cbx_mc.getSelectedItem().toString() n'a pas d'espace superflu??

isoles le comportement pour bien comprendre le probleme ?
0

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

Posez votre question
ramy04804001
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
1
21 juin 2010 à 22:11
salut

voici une exemple :

Zidane est un grand jouer .

mon combo contient :
Zidane
est
un
grand
jouer

lorsque je sélectionne Zidane la requête ça passe bien
lorsque je sélectionne est,un,grand ou bien jouer la requête ne passe pas
par contre moi je veut toute les positions ...

ma base c accees et ma problème je pense que c au niveau like !
0
nhervagault
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
35
21 juin 2010 à 22:21
OK

Si c'est access utilises * à la place de %.


http://office.microsoft.com/en-gb/access-help/like-operator-HP001032253.aspx

Mais tu n'auras pas eu ce probleme,il me semble avec les requetes paramétrées?
Je ne vois pas pourquoi ca passe avec le premier cas.
0
ramy04804001
Messages postés
65
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
29 mars 2011
1
21 juin 2010 à 22:38
salut

si le premier cas retourne une solution avec le premier caractère avec * rien ne retourne !

en faite merci bien .
0