Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    84

    [Java] Lunghezza di un ResultSet

    Ciao a tutti!
    Ho un problema, ho fatto un metodo semplice che invocato mi restituisce i dati contenuti in una tabella di Access, sapete come posso determinare la lunghezza del ResultSet senza dover scriverlo a mano?
    Qui di seguito ho riportato il codice in questione!
    Spero di essere stato abbastanza chiaro!!!
    Grazie 1000!

    public String[][] eseguiProcedura(String procedure) throws Exception {
    String[][] risultato = null;
    try{
    Statement cs = conn.createStatement();
    ResultSet rs = cs.executeQuery(procedure);
    int y = rs.getRow();
    risultato = new String[7][2];
    int i=0;
    while(rs.next()){
    risultato[i][0] = rs.getString("CODICE_CAT_PRODOTTI");
    risultato[i][1] = rs.getString("DESCRIZIONE");
    i++;
    }
    }catch(Exception ex){
    ex.printStackTrace();
    }
    return risultato;
    }

  2. #2
    cosa intendi per 'determinare la lunghezza del ResultSet senza dover scriverlo a mano? '

    Il metodo getRow() della classe ResultSet resituisce il numero della riga corrente.
    Dalle API infatti si vede
    * Retrieves the current row number. The first row is number 1, the
    * second number 2, and so on.
    *
    * @return the current row number; <code>0</code> if there is no current row

    questo significa che se non fai nessuna operazione sul resultset avrai ancora zero. Ad ogni next() il getRow si incrementa di 1.
    Se vuoi ottenere il numero di righe dovresti fare prima un last(), ma poichè questo metodo funziona solo se sei su una riga valida devi prima fare un next.
    Ovvero, se vuoi sapere quante righe sono state resituite dalla query puoi fare

    codice:
    int numRows=0;  
    if(rs.next()){
      rs.last();
      numRows = rs.getRow();
    }
    spero che sia quello che volevi sapere.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.