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 :

ResultSet : Impossible d'avoir la 2e ligne


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2009
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2009
    Messages : 68
    Points : 27
    Points
    27
    Par défaut ResultSet : Impossible d'avoir la 2e ligne
    Bonjour,

    J'ai créé une classe permettant de gérer toutes les actions de la BDD dans mon programme. L'une des méthodes est donc de retourner un ArrayList à partir d'un ResultSet.

    J'utilise une BDD SQLite 3.

    Ma requête simple "SELECT * FROM articles";
    Cette requête me retourne évidemment 2 lignes, cependant lorsque je lis le ResultSet je n'obtiens qu'un article...

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    ArrayList<Article> articles= new ArrayList<Article>();
     
    	try {
    		ResultSet rs = selectArticles();
     
    		while(rs.next()){
    		       Article article = new Article();
                           article.setId(rs.getString("id"));
                           article.setCode(rs.getString("code"));
                           article.setNom(rs.getString("nom"));
                           article.setPrix(rs.getFloat("prix"));
     
                           articles.add(article);
                     }
     
              }catch (SQLException e) {
    		e.printStackTrace();
    	  }

    Puis je retourne mon ArrayList d'articles...
    Le problème avec ça c'est qu'après j'ai qu'un seul article dans ma liste d'articles alors que dans ma table j'en ai 2 !!

    Si quelqu'un aurai une idée...merci d'avance !!

  2. #2
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    bonjour,

    Si ta requête est bonne, et qu'il y a bien 2 articles qui devraient être remonté, alors il y a un problème dans selectArticles() mais vu que tu ne la donne pas !

    on peut pas t'aider !

  3. #3
    Membre confirmé
    Avatar de william44290
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2009
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 400
    Points : 575
    Points
    575
    Par défaut
    tu peux mettre un System.out.println(rs.getString("Code")) dans ta boucle pour vérifier ton nombre de row.

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2009
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2009
    Messages : 68
    Points : 27
    Points
    27
    Par défaut
    Merci pour vos réponse déjà !!

    Je n'ai pas mon code sous les yeux mais de tête ma méthode selectArticles() ne fais que exécuter la requête et retourner un ResultSet du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public ResultSet selectArticles(){
    	ResultSet rs = stat.executeQuery("SELECT * FROM articles");
    	return rs;
    }
    stat est mon Statement.

    Donc je ne vois pas pourquoi il y a un problème dans la requête mais peut être pourrez-vous davantage m'aider.

    Je test le nombre de row dès que je peux !!
    (Et j'édite le message où poste un nouveau si ma fonction est fausse :s)
    Merci.

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2009
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2009
    Messages : 68
    Points : 27
    Points
    27
    Par défaut
    Désolé je fais un double post mais bon j'ai trouvé la solution donc c'est fais en sorte que si ça peut aider quelqu'un ça soit clair !!

    Le problème était en fait dû à mon Statement !!
    Lors du triage du ResultSet je récupérais une ArrayList via une autre méthode allant chercher en base !!

    Donc, évidemment, ça plantait tout ^^'

    Mais fort heureusement, j'ai réussi à trouver !!
    Donc voilà !!

    Merci à tout le monde qui m'a aidé !!

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 28/10/2010, 12h09
  2. Réponses: 1
    Dernier message: 15/08/2006, 12h18
  3. Impossible de supprimer fichier en ligne de commande
    Par alexg81 dans le forum Windows
    Réponses: 2
    Dernier message: 20/04/2006, 08h05
  4. Impossible d'avoir un arrière plan en utilisant CSS
    Par Tartenpion dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 21/06/2005, 14h00
  5. [JWindow + KeyListener] Impossible d'avoir un KeyEvent
    Par Pascmar dans le forum Agents de placement/Fenêtres
    Réponses: 14
    Dernier message: 19/07/2004, 17h35

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