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

Composants Java Discussion :

Resultat d'une requete SQL dans une JTable


Sujet :

Composants Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Resultat d'une requete SQL dans une JTable
    Bonjour à tous,

    dans le cadre de mon travail j'ai décidé de faire un inventaire de différents soft dans le parc informatique (le nombre total de chaque soft).
    Pour cela je me connecte à une base de donnée ocs, jusque la pas de problèmes , ensuite je le lance un select count etc ...

    et je récupère le nombre total , voici ma méthode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Statement state = conn.createStatement();
    ResultSet QueryIE8 = state.executeQuery("SELECT COUNT(*) from softwares where name like '%Explorer 8' ");
    		      QueryIE8.next();
    		      int nbIE8=QueryIE8.getInt(1);
    //System.out.println(nbIE8);

    J'ai ensuite créé une JTable sur une interface graphique (JFrame) mais je n'arrive pas à afficher le résultat dedans, j'aimerai savoir quelle serais la méthode à utiliser ou si justement il existerait un moyen plus simple ...
    Sachant que le but final de ce projet est d'être utilisable par certain techniciens (donc interface graphique ou page html).

    Cordialement

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    De quoi te guider un peu : http://www.developpez.net/forums/d10...s/jtable-jdbc/.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Salut ,
    Merci pour ta réponse, j'ai réussi à afficher mon résultat dans le tableau.
    Je ne sais pas si cette manière de faire est optimale , mais elle fonctionne !


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Statement state = conn.createStatement();
    ResultSet QueryIE8 = state.executeQuery("SELECT COUNT(*) from softwares where name like '%Explorer 8' ");
    		      QueryIE8.next();
    		      int nbIE8=QueryIE8.getInt(1);
                          QueryIE8.close();           
    state.close();
                            model.addColumn("Softwares");
    		        model.addColumn("Version(s)");
    		        model.addColumn("Quantité");
     
    		        model.insertRow(0, new Object[] 	{ "Explorer","8",nbIE8});
    Malheureusement cet affichage est plutôt incomplet , et peu lisible.
    J'aimerais savoir si l'utilisateur pourrais choisir un modèle de machine et l'affichage des quantités se fera fonction de son choix (cad le Resultset récupère tout les types de modèle, les affiche et le reste du programme en fait des choix de sélection)

    Cette solution est-elle envisageable ? si oui, est-elle difficile ? mon niveau en Java est plutôt bas ..

  4. #4
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Citation Envoyé par Tigroke Voir le message
    Malheureusement cet affichage est plutôt incomplet , et peu lisible.
    J'aimerais savoir si l'utilisateur pourrais choisir un modèle de machine et l'affichage des quantités se fera fonction de son choix (cad le Resultset récupère tout les types de modèle, les affiche et le reste du programme en fait des choix de sélection)

    Cette solution est-elle envisageable ? si oui, est-elle difficile ? mon niveau en Java est plutôt bas ..
    On peut tout envisager !

    Tu peux tout à fait écrire une première requête qui va te récupérer l'ensemble des modèles et les afficher dans un JComboBox par exemple. De là tu récupères la valeur sélectionnée et tu exécutes une requête paramétrée pour récupérer les infos en fonction du modèle choisie.

    Pour les requêtes paramétrée il te faut utiliser un PreparedStatement.

    Exemple :

    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
     
     
    public void getInfoFromModele ( String modele ) {
     
    String query = "SELECT qty, version FROM software WHERE name = ?";
    PreparedStatement pstmt = con.createPreparedStatement( query );
     
    pstmt.setString( 1, modele );
     
    ResultSet rs = pstmt.executeQuery();
     
    rs.next();
     
    int qty = rs.getInt("qty");
    String version = rs.getString("version");
     
    }
    Le tout dans un jolie try/catch ou try-with-ressource selon la version de Java que tu utilises.

Discussions similaires

  1. extraire le jour dans une requete sql dans une colone de type date
    Par levasseur62 dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 17/04/2011, 21h42
  2. resultat d'une requete SQL dans une ArrayList
    Par zouuc dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 18/02/2009, 10h25
  3. Réponses: 1
    Dernier message: 22/06/2007, 17h04
  4. Réponses: 2
    Dernier message: 25/04/2007, 14h56
  5. Importer valeur requete SQL dans une Requete
    Par qbihlmaier dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 21/03/2006, 14h24

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