Bonjour,
J'ai un souci dans une Jsp avec l'affichage des données extraites de 2 tables liées entre elles par une clé externe.
Je m'explique.
Imaginons une table APPLICATIONS, constituée d'un Identifiant unique, d'un Domaine, et d'un Sous Domaine.
Pour afficher cette table, je fais donc un traitement du genre :
Jusque là tout va bien.
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
20
21
22
23
24 String requete = "select * from applications"; ResultSet resultat = null; resultat = accesBdd.selection(requete); while (resultat.next()){ %> <tr> <td> <% out.println(resultat.getString(1)); %> </td> <td> <% out.println(resultat.getString(2)); %> </td> <td> <% out.println(resultat.getString(3)); %> </td> </tr> <%
Imaginons à présent une table UTILISATEURS, dans laquelle on trouve un Identifiant unique, un nom d'Utilisateur, puis l'identifiant d'une des applications contenue dans la table APPLICATIONS.
Dans ce cas là, je voudrais afficher les champs Identifiant, Utilisateur, puis, non pas l'identifiant vers APPLICATIONS, mais Domaine et Sous Domaine...
J'avais tenté un truc du genre :
Ca fonctionne, mais c'est pas vraiment très "propre", enfin je pense...
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33 String requete = "select * from utilisateurs"; ResultSet resultat = null; resultat = accesBdd.selection(requete); while (resultat.next()){ %> <tr> <td> <% out.println(resultat.getString(1)); %> </td> <td> <% out.println(resultat.getString(2)); %> </td> <td> <% String requete2 = "select * from applications where identifiant = " + resultat.getString(3); ResultSet resultat2 = null; resultat2 = accesBdd.selection(requete2); resultat2.next(); out.println(resultat2.getString(2)); %> </td> <td> <% out.println(resultat2.getString(3)); %> </td> </tr> <%
Comment procéderiez-vous pour améliorer cette gestion croisée ?
Merci d'avance.
Partager