Filtrer une table mysql [Résolu]

javanovice 22 Messages postés lundi 9 avril 2012Date d'inscription 11 juin 2012 Dernière intervention - 27 mai 2012 à 11:30 - Dernière réponse :  Utilisateur anonyme
- 2 juin 2012 à 13:04
Bonjour tout le monde , je vous fais part de ce que j'essaie de réaliser espérant que je trouverai une réponse à ma question. voilà je fais application en java et la je voudrais programmer une classe ' recherche', la tache qu effectue cette dernière c'est de rechercher des personnes dans une table mysql par "nom ou prénom" tapé par l'utilisateur, je voudrais chaque fois que l'utilisateur tape une lettre la table se filtre selon les lettre tapées. et le resultalt je l'affiche dans un scrollpane. pour l'affichage j'ai pas de pb je cherche juste la requette et l'action du JTextField. j'espère avoie été claire. merci d'avance.
Afficher la suite 

Votre réponse

6 réponses

Utilisateur anonyme - 29 mai 2012 à 12:39
+3
Utile
Un truc du genre :

String requête = "select * from ta_table where nom like '"+nom+"%' or prenom like '" + prenom + "%'"


Ici, nom et prenom sont des variables ayant le nom et le prénom de recherche. C'est la façon brute, je préfère faire des requêtes préparées personnellement.

--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Utilisateur anonyme
Utilisateur anonyme - 28 mai 2012 à 23:21
0
Utile
La requête SQL n'est pas bien compliquée...

Un truc du genre select * from table_personnes where nom like 'val1' or prenom like 'val2'.

Sinon que veux-tu faire avec ton JTextField ?


--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Commenter la réponse de Utilisateur anonyme
javanovice 22 Messages postés lundi 9 avril 2012Date d'inscription 11 juin 2012 Dernière intervention - 29 mai 2012 à 12:15
0
Utile
Bonjour, merci bcp pour la réponse mais c'est pas exactement ce que je recherche, enfait je voudrais que ma requette SQL select même les enregistrement qui commencent par val1 pour le nom et val2 pour le prénom. Merci infiniment
Commenter la réponse de javanovice
javanovice 22 Messages postés lundi 9 avril 2012Date d'inscription 11 juin 2012 Dernière intervention - 29 mai 2012 à 12:33
0
Utile
par exemple si j'ai ma table avec deux champs ( nom,prénom) et contient ces enregistrement (morel,dana) (mathieu,sarah)(morin,daniel)(roussel,pascale) si je tappe la lettre 'm' dans le JTextField NOM, la requete affiche les 03 premiers enregistrement et si je tape 'da' dans le JTextField PRENOM la requette affiche le 1er et le 3ème enregistrement. voilà merci bcp
Commenter la réponse de javanovice
javanovice 22 Messages postés lundi 9 avril 2012Date d'inscription 11 juin 2012 Dernière intervention - 29 mai 2012 à 12:49
0
Utile
Suuupeeer ça a marché merci infiniment, et y aurait-il une action pour le JTextField je voudrais que la recherche se fait juste en tapant des lettres donc pas de bouton pour faire l 'action
Commenter la réponse de javanovice
Utilisateur anonyme - 2 juin 2012 à 13:04
0
Utile
Pour ça, va faire un saut du côte des KeyListener ou des KeyAdapter. L'idée c'est que tu appelles ta méthode qui exécute la requête dès que tu tapes une touche. Un truc du genre :

JTextField jtfNom = new JTextField..... ; // tu créés ton JTextField comme d'habitude
jtfNom.addKeyListener( new KeyAdapter() {
     public void keyTyped( KeyEvent ke ){
         // appelles ta méthode
     }
});



Par contre c'est la méthode à la mord moi l'noeud, honnêtement je ne l’utilise pas trop car je fais mes propres classes mais après tout dépend de tes besoins. Bref, regarde sur le forum car ne sont pas les sources qui manquent. Là je passe en coup de vent donc j'ai codé vite fait et je doute ce que soit fonctionnel car j'ai fait de tête

Si tu as un problème ou des question, tu n'hésites pas et tu repasses ici.

--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Commenter la réponse de Utilisateur anonyme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.