IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

comment Filtrer resultset


Sujet :

JDBC Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 149
    Points : 95
    Points
    95
    Par défaut comment Filtrer resultset
    Bonjour à tous et bonnes fêtes,

    J'aimerais savoir s'il y a une astuce pour filtrer les données dans ResultSet dans java 1.4 (pour ceux qui connaissent VB, on fait "recordset.Filter"). Je cherche un truc semblable. j'ai trouvé l'interface FilteredRowSet mais il est utilisable à partir de java 1.5.

    Merci de vos aides

  2. #2
    Membre confirmé Avatar de djsnipe
    Inscrit en
    Mai 2008
    Messages
    440
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 440
    Points : 493
    Points
    493
    Par défaut
    Heu, rajouter une clause WHERE ...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 149
    Points : 95
    Points
    95
    Par défaut
    bonjour djsnipe,
    je me suis peut être mal exprimé.
    en fait, j'ai 2 classes, disons A & B

    dans la Classe A, j'ai une ligne qui fait appel à une méthode dans la classe B.
    Classe A:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class A{
    private ResultSet rs;
     
    ...
    // ICI JE FAIS "SELECT * FROM ....
    int counter = getCounter(rs, "XXXX", "YYYY");//XXXX =table, YYYY = colonne
    }
    Classe B:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public class B{
    ....
    public int getCounter(ResultSet cpt, String table, String col){
     
    }
    dans la méthode getCounter(), j'ai des données de la requete faite dans la classe A.
    C'est dans cette methode que je veux filtrer les resultats.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public int getCounter(ResultSet cpt, String table, String col)
    {
      //du genre 
    cpt.filter(" NOMTABLE"+table);
    }
    Voilà, j'espère que j'ai été un peu plus clair. Mon prob est que je dois filtrer un resultset qui a déja executé une requete.

  4. #4
    Membre confirmé Avatar de djsnipe
    Inscrit en
    Mai 2008
    Messages
    440
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 440
    Points : 493
    Points
    493
    Par défaut
    Citation Envoyé par grospatapouf Voir le message
    Mon prob est que je dois filtrer un resultset qui a déja executé une requete.
    Disons que c'est la façon dont est codé ton programme qui est comme ca.
    Je vois trois solutions :
    1) Monter tout les résultats en mémoire en exploitant une seule fois le ResultSet, puis filtrer la collection d'objets (la lib commons collection à des utilitaires pour ça). L'inconvénient, c'est que tout le résultat doit être récupéré en Java, et que en fonction du volume de données renvoyé par la requête, ca pourrai être génant.
    2) Te ballader dans le ResultSet avec les méthodes next() et previous() et filtrer manuellement
    3) Faire une requête par usage. Mais là attention, remarque inverse à la méthode 1, si tu as peu de données (disons 15) ce sera plus couteux de faire 15 requetes qu'une seule

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 149
    Points : 95
    Points
    95
    Par défaut
    J'ai finalement préféré procéder autrement, de façon moins prise de tête.
    Un grand merci à tous ceux qui m'ont répondu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [oracle9i] comment filtrer par un "sous type"
    Par alex_r77 dans le forum Oracle
    Réponses: 4
    Dernier message: 26/04/2006, 17h13
  2. Réponses: 5
    Dernier message: 31/03/2006, 18h12
  3. [ADO.NET][VB.Net]Comment filtrer certains champs de DataRow?
    Par Philorix dans le forum Accès aux données
    Réponses: 3
    Dernier message: 14/02/2006, 20h26
  4. Comment filtrer une TListBox ?
    Par jmjmjm dans le forum Composants VCL
    Réponses: 9
    Dernier message: 17/11/2005, 13h08
  5. comment filtrer une table avec deux criteres càd 2 colonnes
    Par athmane2dz dans le forum Bases de données
    Réponses: 7
    Dernier message: 28/07/2004, 15h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo