Como criar estrutura de repetição que verifique todas as linhas de uma tabela e não só a primeira

2 respostas
java
R

Galera, bom dia.
Estou trabalhando num projeto de conferencia de carga.
Esbarrei em um problema, preciso criar uma estrutura de repetição que verifique todos os campos de uma coluna, e não apenas a primeira linha. A coluna recebe dados de um DB mysql.
segue o codigo atual, que verifica apenas a primeira linha:
public void fecharCarga (String a, int b, int c, int d, int e){

con = (com.mysql.jdbc.Connection) Conexao.getConnection();
    PreparedStatement stmt = null;
    ResultSet rs;
    try {
        
        stmt = con.prepareStatement("select qtdOrigem from "+ a+"_"+b+"_"+c+"_"+d+"_as_"+e+"Horas1 where qtdOrigem > 0" );
        
        rs = stmt.executeQuery();
        int quantidade = rs.getInt("qtdOrigem");
            rs.next();
        
        if(rs.next())
            
        {    if(quantidade<=0){
           
             JOptionPane.showMessageDialog(null, "ALERTA!\nCARGA NÃO PODE SER FECHADA!\nVERIFIQUE MOTORES A SEREM BIPADOS!");
                stmt.executeUpdate();
            
            
        }else{
             JOptionPane.showMessageDialog(null, "CARGA FECHADA COM SUCESSO");                }
        }
    } catch (SQLException ex) {
        Logger.getLogger(motorDAO.class.getName()).log(Level.SEVERE, null, ex);
    } finally {
        Conexao.closeConnection(con, stmt);
    }

}

2 Respostas

darlan_machado

O que você entende por estrutura de repetição?
Assim que você pensar um pouco mais adequadamente sobre a questão, vai encontrar uma resposta simples e óbvia.
Dica: o problema está nesta linha aí destacada

D

O código está confuso, no SQL está:

qtdOrigem > 0

e em seguida:

if(quantidade<=0){

portanto mesmo que consiga criar a estrutura de repetição, sempre vai cair no

}else{
         JOptionPane.showMessageDialog(null, "CARGA FECHADA COM SUCESSO");                }
    }

exceto se a seguinte linha for false

if(rs.next())

Também tem stmt.executeUpdate();, mas acho que um statement para o update teria que ser preparado antes da execução daquele método.

Recomendo que se organize melhor e refaça esse código.

Criado 4 de fevereiro de 2018
Ultima resposta 4 de fev. de 2018
Respostas 2
Participantes 3