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 faire cette requête ?


Sujet :

JDBC Java

  1. #1
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2009
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Septembre 2009
    Messages : 458
    Points : 237
    Points
    237
    Par défaut Comment faire cette requête ?
    Bonjour,

    Je sollicite votre aide par rapport à une adaptation d'une requête sql dans mon code. Je souhaiterais faire un inner join de ma table ecole et eleve.

    Pour la table ecole nous avons 3 attributs (pk_ecole, nom_ecole, adresse_ecole)

    Pour la table eleve nous avons 5 attributs (pk_eleve, fk_ecole, nom_eleve, prenom_eleve, naissance_eleve)

    Le but est de récupérer dans un fichier jsp les enregistrements des champs suivants: pk_eleve, nom_eleve, prenom_eleve, naissance_eleve, nom_ecole

    J'ai essayé de créer une méthode, mais elle a l'air d'être incorrecte. Pouvez-vous m'aider svp..

    Merci

    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
    public static List<Ecole> innerJoin(){
            List<Ecole> ecoles=new ArrayList<Ecole>();
     
            try{
                Connection con=getConnection();
                PreparedStatement ps=con.prepareStatement("SELECT * FROM ecole INNER JOIN eleve ON ecole.pk_ecole = eleve.fk_ecole ");
                ResultSet rs=ps.executeQuery();
                while(rs.next()){
                    Ecole ecole=new Ecole();
                    Eleve eleve = new Eleve();
                    eleve.setPk_eleve(rs.getInt("pk_eleve"));
                    eleve.setNom_eleve(rs.getString("nom_eleve"));
                    eleve.setPrenom_eleve(rs.getString("prenom_eleve"));
                    eleve.setNaissance_eleve(rs.getString("naissance_eleve"));
                    ecole.setNom_ecole(rs.getString("nom_ecole"));
                }
            }catch(Exception e){System.out.println(e);}
            return ecoles;
        }

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Mis à part que tu parcours ta liste de résultat sans les stocker dans ta collection ecoles, qui reste donc vide, il y a quelque chose en particulier qui se produit et qui te fait penser qu'il y a une erreur?

  3. #3
    Membre expérimenté
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 088
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 088
    Points : 1 540
    Points
    1 540
    Par défaut
    Bonjour,
    Vous pouvez aussi vous passer de la lourdeur des mots clé INNER JOIN en faisant votre requête ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM ecole, eleves WHERE ecole.pk_ecole = eleve.fk_ecole
    Je trouve cela juste 200 fois plus simple...
    Mis à part, le vrai problème a bien été identifié par tchize_
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

Discussions similaires

  1. Comment faire cette requête ?
    Par yacine.dev dans le forum Hibernate
    Réponses: 1
    Dernier message: 18/06/2010, 12h21
  2. Comment faire cette requête ?
    Par Cazaux-Moutou-Philippe dans le forum Bases de données
    Réponses: 11
    Dernier message: 02/11/2007, 08h44
  3. Comment faire cette vue ?
    Par jibe74 dans le forum SQL
    Réponses: 3
    Dernier message: 21/10/2005, 16h30
  4. [SQL] Comment faire ma requête
    Par kaiserazo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 30/05/2005, 10h39

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