Ola!
Eu estou com uma dúvida… como fazer para verificar se um ResultSet esta vazio (ou um métdo que retorne o número de registros)? Algo tipo um método count()…
Valeww!!
next() ?
Tem que ser de um jeito que não mova o cursor do ResultSet, senão quando eu testo
if(resultSet.next())
ele move o cursor
Será que resolve?
if (resultSet.first())
:idea:
first
boolean first()
throws SQLException
Moves the cursor to the first row in this ResultSet object.
Returns:
true if the cursor is on a valid row; false if there are no rows in the result set
Throws:
SQLException - if a database access error occurs or the result set type is TYPE_FORWARD_ONLY
Amigo, se você estiver usando loop, faça assim:
if(rs.next()){
do{
}while(rs.next());
}
Blz
tambem estou com essa duvida e fiz do jeito que voce ensinou mas nao deu certo sera o que esta errado. Vou postar meu codigo.
ResultSet rsCidades = … (aqui estou buscando cidades cadastradas no banco)
try{
if(rsCidades.next()){
do{
} while(rsCidades.next()); //quando chega aqui da erro e cai no catch…
String[] dados = new String[3];
dados[0] = rsCidades.getString(“CODCIDADE”);
dados[1] = rsCidades.getString(“NOMECID”);
dados[2] = rsCidades.getString(“UF”);
modelo.addRow(dados); //aqui estou acrescentando a informaçao numa JTable…
}
}catc…
Da uma olha e ve se esse codigo server…(Não testei…)
ResultSet rsCidades = ...... (aqui estou buscando cidades cadastradas no banco)
try{
ArrayList dados = null;
do{
if(rsCidade!=null){
dados.add(rsCidades.getString("CODCIDADE"));
dados.add(rsCidades.getString("NOMECID"));
dados.add(rsCidades.getString("UF"));
modelo.addRow(dados); //aqui estou acrescentando a informaçao numa JTable...
}
} while(rsCidades.next()); //quando chega aqui da erro e cai no catch...
}catc.....
E possivelmente o seu código pode esta dando erro, pq vc esta fazendo um array de posições fixas e quando executa o codigo pode esta estourando a capacidade…
Tente assim
try{
ResultSet rsCidades = ...... (aqui estou buscando cidades cadastradas no banco)
while (rsCidades.next()){
String[] dados = new String[3];
dados[0] = rsCidades.getString("CODCIDADE");
dados[1] = rsCidades.getString("NOMECID");
dados[2] = rsCidades.getString("UF");
modelo.addRow(dados); //aqui estou acrescentando a informaçao numa JTable...
}
}catch(SQLException e){
// tratar
}
Não é correto fazer um if antes do wilhe. Isso é programação esparguete. O While já tem um if incorporado.
O try é antes de obter o resultset