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

Outils MySQL Discussion :

afficher une table + le total des pieces +montant total


Sujet :

Outils MySQL

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut afficher une table + le total des pieces +montant total
    bonjour tt le monde,
    j'ai une table intitulée "depenses_francaises" sur Mysql administrator 1.2.12 qui est la suivante:
    numero, bureau_poste,no_pension,montant,date_paiement,date_echeance

    j'tilise java server page(JSP) pour gerer ma base de données et je veux trouver une requete ki m'affiche les elements de ce tableau + le nombre total des pièces et le montant total .


    j'ai besoin de votre aide.
    merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 284
    Points : 11 743
    Points
    11 743
    Par défaut
    D'abord ça s'appelle une table et non une base. Ensuite on fait normalement ça avec deux requêtes différentes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    -- détail
    SELECT numero, bureau_poste,no_pension,montant,date_paiement,date_echeance
    FROM tatable
     
    -- agrégats d'ensemble
    SELECT COUNT(*) AS NbElem, SUM(montant) AS Total
    FROM tatable
    C'est possible de l'avoir en une seule requête, mais je ne suis pas sûr que ça présente le moindre intérêt...
    Antoun
    Expert Tableau, Essbase, BO, SQL

    La bible d'Essbase, 2ème édition

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    c'est ce ke j'ai fait,lorsque j'execute la premier requete, ma table s'affiche normalment mais quand je rajoute la deuxieme requete, j'obtien cette erreur:java.sql.SQLException: Operation not allowed after ResultSet closed

    (connexion a la base)
    Statement stmt=con.createStatement();
    ResultSet rs;
    ResultSet rsTotal;
    rs = stmt.executeQuery("SELECT * from depenses_francaises");
    rsTotal = stmt.executeQuery("SELECT count(*) as total, sum(montant) as mont_tot FROM depenses_francaises");%>

    <html>
    <body>
    <table> (pour l'affichage de la table , c'est bon) </table>

    <p> Montant Total: <%=rsTotal.getString("mont_tot")%></p>
    <p> Nombre total des pièces: <%=rsTotal.getString("total")%></p>
    </body>
    </html>
    je sais plus quoi faire

  4. #4
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    A quelle ligne correspond l'erreur ?

    A prioris tu essaies de faire 2 stmt.executeQuery d'affilé, ce qui fait que le premier resultSet n'est plus disponible.

    A mon avis : fais une premiere requète puis extrait le resultat du resultSet pour le sauver dans une variable mont_tot. Ensuite, fais la même chose pour enregistrer le 2eme résultat dans une 2eme variable total. Clos ton statement, puis envoie le code d'affichage avec les variables dedans. A ce moment là tu ne devrais plus à avoir traiter de resultSet.

    Personnellement, j'effectue toujours les opérations d'accès à la base de donnée avant l'affichage du HTML. Ca permet de séparer autant que faire se peut le code de la présentation sans utiliser de templates.
    Etre à son compte, y'a rien de mieux !

  5. #5
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Statement stmt=con.createStatement();

    ResultSet rs;
    rs = stmt.executeQuery("SELECT * from depenses_francaises");
    String numero=rs.getString("numero");
    String b_poste=rs.getString("b_poste");
    String no_pension=rs.getString("no_pension");
    String montant=rs.getString("montant");
    String d_echeance=rs.getString("d_echeance");
    String d_paiement=rs.getString("d_paiement");

    ResultSet rsTotal;
    rsTotal = stmt.executeQuery("SELECT count(*) as total, sum(montant) as mont_tot FROM depenses_francaises");
    String mont_tot=rsTotal.getString("mont_tot");
    String total=rsTotal.getString("total");

    stmt.close();
    con.close();
    %>
    <html>
    <body>
    <table> (affichage de ma table)
    </table>
    <p> Montant Total: <%=mont_tot%></p>
    <P>Nombre total des pièces: <%=total%></p>
    </body>
    </html>

    et voici mon erreur:java.sql.SQLException: Before start of result set

  6. #6
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    OK pour l'erreur mais à quelle ligne elle correspond ?
    Etre à son compte, y'a rien de mieux !

  7. #7
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    je sais pas a kel niveau , mais lorsque je compile, ya cette errur qui f'affiche.
    Erreur :
    java.sql.SQLException: Before start of result set

  8. #8
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    Tu compiles ton JSP ?
    Etre à son compte, y'a rien de mieux !

  9. #9
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    oui j'affiche la page jsp grace au serveur tomcat

  10. #10
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    Comment le compiles-tu ?
    Etre à son compte, y'a rien de mieux !

  11. #11
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    je prepare la page page jsp avec dreamweaver, je l'enregistre, je me connecte au serveur tomcat puis je me connecte a l'adresse de cette page. pkoi?

  12. #12
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    Pour savoir de quoi tu parles.

    Et avant ou après ton java.sql.SQLException: Before start of result set il n'y a pas un truc du genre "at line 52" ?
    Etre à son compte, y'a rien de mieux !

  13. #13
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    non, c'est ma page erreur.jsp qui s'affiche et qui ne contient que cette phrase.j'espere que tu vois de quoi je parle.
    en fait moi je ne maitrises pas ses outils mais j'essaye de faire de mon mieu

  14. #14
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    Essaie d'executer avant de récupérer les infos. Tu auras cependant plus de réponses dans la catégorie JSP de ce forum.
    Etre à son compte, y'a rien de mieux !

  15. #15
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    merci pour ton aide mais j'ai tout essayé, j'ai deja essayer avec le while (rs.next()) et ca ne marche pas
    je suis sur qu'il y'a un petit detail que je ne vois pas et qui me bloque.
    merci en tout cas.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/03/2013, 21h41
  2. Réponses: 0
    Dernier message: 14/03/2013, 03h42
  3. Réponses: 5
    Dernier message: 30/09/2008, 15h54
  4. [C#] creer et afficher une table en code behind
    Par shams dans le forum ASP.NET
    Réponses: 9
    Dernier message: 13/07/2005, 16h51
  5. remplir une table en fonction des résultats
    Par Psychomantis dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 19/10/2004, 12h22

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