Erro na query mysql somando coluna do banco dependente de uma Id

2 respostas
D

E ai pessoal…
Estou com problemas em associar a query em mysql com o java…
Preciso somar uma coluna (total) que depende de um Id e esse Id eu obtenho quando eu escolho algum cliente em minha tabela.

Quando eu clico no nome da pessoa que desejo somar a coluna “total” o nome vai para um jTexfield e a Id vai para minha variavel codCliente.

Código da query:

public void somaTotal(Vendas vend) throws SQLException

{

ConsultaFinanceiro cons = new ConsultaFinanceiro();

String sql = SELECT SUM(total) FROM vendas WHERE codCliente=4 GROUP BY codCliente; // estou somando o total do Cliente do codCli ou Id = 4

PreparedStatement stmt = conexao.prepareStatement(sql);

ResultSet rs = stmt.executeQuery();
if (rs.next())
    {                     
        vend.saldoAtual = rs.getFloat(1);          
    }
    else
    {
        vend.saldoAtual = 0;
    }      
    
   
 }

Quando eu atribuo um Id fixo na minha query a soma é retornada com sucesso, mas quando eu coloco o ? para que a Id seja escolhida pelo usuário através de uma tabela de cliente, não consigo nenhuma informação! É retornado um erro na tela.

Botão de consulta:

private void jBconsultarActionPerformed(java.awt.event.ActionEvent evt) {

try

{

Vendas vend = new Vendas();

ComandosSql dao = new ComandosSql();
//vend.codCliente = codCli; // codCli passa a Id obtida quando eu clico no nome da pessoa
  
        dao.somaTotal(vend); // chamada da função

        jTsaldoAtual.setText(String.valueOf(vend.saldoAtual)); // Jtextfield recebe somatória
    } 
    catch (SQLException ex) 
    {
        JOptionPane.showMessageDialog(null, "Impossível pesquisar Saldo Devedor" + ex);
    }

}

Tentei muito e não consegui, aguardo alguma ajuda.

Obrigado Pessoal.
Espero ter sido claro em minha explicação.

2 Respostas

Alys

Bem vindo ao fórum!

Antes de partir para sua pergunta, chamo sua atenção para um detalhe:

Ao postar códigos, sempre use as tags de [code] em volta do texto. Utilize os botões de formatação (B, í, U, etc) para facilitar. É muito útil e facilita muito a leitura do seu texto. Edite o seu tópico e faça esta modificação.

Quanto à sua dúvida:

1) O que você quis dizer com "não consigo nenhuma informação"? A consulta não retorna nada? Dá alguma exceção? Se for, qual?

2) No caso da consulta não retornar nada: existem registros no banco para a consulta feita?

3) Quando o ID é escolhido pelo usuário, você debugou para ver se este valor está sendo corretamente setado?

flaviochess

Deivison, posta o erro e como você está passando este parametro quando está utilizando a ? (interrogação), para que seja mais fácil para analisarmos.

Criado 3 de outubro de 2012
Ultima resposta 4 de out. de 2012
Respostas 2
Participantes 3