Primeiro, use a tag [code] para postar código.
Segundo, sabe qual a função do while?
Em português, while é enquanto.
Ou seja, enquanto a sentença entre parênteses for verdadeira, aquele trecho de código dentro do laço se repete.
Ele se repetirá N vezes, desde que, a condição seja verdadeira já no início.
Ou seja, se while(rs.next()) for falso, ele nem executa este laço.
Enadrov
fiz sem o tag code pois estou no serviço e estava chegando gente aqui, foi não acontecerá de novo. Sei sim como funciona o while, porem mesmo quando testanto se for falso o rs.next(), não estou conseguindo verifica se a busca não acho o que procura.
cido18
Olá Enadrov,
Se eu entendi, você quer verificar um dado especifico no banco, dentro o while faça alguns ifs para filtrar a pesquisa.É essa a sua dúvida?
Enadrov
Ola , cido18.
Com este código eu consigo achar um determinado cliente pelo nome certo. Eu gostaria de criar um JOptionPane caso o cliente não seja encontrado falando, cliente não cadastrado. Porem não estou conseguindo determina quando o cliente não for encontrado.
cido18
Acredito que se você um do while seja melhor nessa ocasião, depois você faz um if para exibir a mensagem.
javax.swing.Daniel
Stringsql="select * from cliente where nome = ?";PreparedStatementstmt=con.prepareStatement(sql);stmt.setString(1,nome);ResultSetrs=stmt.executeQuery();if(rs.next()){while(rs.next()){// Comandos para recuperar os resultados do resultSet aqui.}}else{JOptionPane.showMessageDialog(null,"Vishi tem nada!");}
pmlm
javax.swing.Daniel:
if(rs.next())
{
while(rs.next()){
Ou um ou outro, os dois ao mesmo tempo não. Assim vai pular o primeiro registo.
cido18
Olá eu tenho um exemplo aqui:
public List<Cliente> lista() {
String sql = "select * from cliente";
List<Cliente> clientes = new ArrayList<Cliente>();
PreparedStatement preparedStatement;
try{
preparedStatement = connection.prepareStatement(sql);
ResultSet resultSet = preparedStatement.executeQuery();
//Aqui!!!
while (resultSet.next()) {
clientes.add(populaPlano(resultSet));
}
if(clientes.size() == 0){
System.out.println("Entrou aki!!");
JOptionPane.showConfirmDialog(null, "Vazio");
}
resultSet.close();
preparedStatement.close();
}catch(SQLException e ){
e.printStackTrace();
}
return clientes;
}
Espero que ajude.
Enadrov
Ola cido18.
Assim funcionou, obrigado a todos
cido18
Enadrov se precisa de alguma coisa só postar, não esqueça depois de colocar o tópico como resolvido
renanjp
(dica)
Faz um metodo separado para popular um objeto com a tupla do rs…