Bonjour à tous,
J'ai bien compris qu'il n'était pas possible de lire plusieurs fois les résultats d'une requête écrits dans un ResultSet.
En faisant de cette façon par exemple :
Très bien, mais moi ce que j'aimerais faire c'est réutiliser la variable comme ça le ferait en faisant la requête dans une boucle.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 rs = résultat de ma requête while (rs.next()) { // on lit ce qu'il y a dans rs une première fois } while (rs.next()) { // on lit ce qu'il y a dans rs une deuxième fois }
Le code en question :
Comment est-ce que je pourrais faire avec ce rsassocies ?
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 ResultSet rs; ResultSet rsassocies; // liste des comptes qu'il possède rs = connexion.Requete("SELECT DISTINCT idCompte FROM sassocier WHERE idClient = "+super.getReference()+";"); // parcours de ce résultat pour avoir le nombre d'associés while (rs.next()) { // puisque rs n'est pas réutilisable, on l'écrit dans une collection comptesPossedes.add(Integer.parseInt(rs.getString("idCompte"))); rsassocies = connexion.Requete("SELECT count(idClient) as nb_associes FROM sassocier WHERE idCompte = "+Integer.parseInt(rs.getString("idCompte"))+";"); if(rsassocies.next() && Integer.parseInt(rsassocies.getString("nb_associes")) > 1) { nbComptesAvecAssocies++; } }
Merci.
Partager