Ciao a tutti,
ho il seguente codice che legge dei "casiclinici" da un DB e me li stampa con un ciclo while. Dopodichè passo avanti ad altre pagine che me li modificano così che poi non debbano più comparire nell'elenco. Quindi vorrei far uscire una scritta del tipo "Non ci sono più casi clinici".
Il problema (penso) è che ci sono 2 rs.next() in questo pezzo di codice, quindi mi "perdo" il primo risultato della query.
codice:<% String specializzazione=request.getParameter("specializzazione"); Class.forName ("com.mysql.jdbc.Driver"); Connection conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/enterprise"); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT distinct c.id_casoclinico,nome, cognome,gradourgenza FROM casoclinico as c JOIN interrogazione as i ON c.id_casoclinico=i.id_casoclinico where c.specializzazione='"+specializzazione+"' AND i.risposta is null order by gradourgenza;"); %> <% if(rs.next()) { while(rs.next()) { int num = rs.getInt("id_casoclinico"); out.println(" ID:"+rs.getInt("id_casoclinico")+" Nome Paziente:"+rs.getString("nome")+" Cognome Paziente:"+rs.getString("cognome")+" Grado urgenza:"+rs.getString("gradourgenza")+""); %> Avanti <% } } else out.println("Non ci sono ulteriori casi");%> <% rs.close(); stmt.close(); conn.close(); %>
Come posso risolvere?

Rispondi quotando
