Olá Pessoal!
Estou tentando atualizar um valor na tabela do BD e não estou conseguindo. Segue abaixo o codigo da classe DAO que utilizo:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.jairo.dao;
import br.com.jairo.fabrica.FabricaConexao;
import br.com.jairo.modelo.Contas;
import br.com.jairo.modelo.Creditos;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author Jairo
*/
public class CreditoDAO {
private Connection connection;
public CreditoDAO() {
this.connection = new FabricaConexao().getConnection();
}
//metodo para incluir credito
public void novaCredito(Creditos creditos,String conCodigo,Contas contaComSaldo) throws SQLException {
String sqls = "select * from contas where concodigo = "+conCodigo+" ";
PreparedStatement psc = null;
ResultSet rsc = null;
try {
psc = connection.prepareStatement(sqls);
rsc = psc.executeQuery();
while (rsc.next()) {
contaComSaldo.setConCodigo(rsc.getInt("concodigo"));
contaComSaldo.setConDescricao(rsc.getString("condescricao"));
contaComSaldo.setTipoCodigo(rsc.getInt("tipocodigo"));
contaComSaldo.setConSaldo(rsc.getDouble("consaldo"));
}
} catch (Exception e) {
Logger.getLogger(CreditoDAO.class.getName()).log(Level.SEVERE, null, e);
}
//if(contaComSaldo!= null){
// System.out.println("Objeto conta:"+ contaComSaldo.getConDescricao() );
//System.out.println("Saldo conta :" + contaComSaldo.getConSaldo() );
//}
String sql = "insert into creditos (credata,concodigo,crevalor,crehistorico,consaldo) values (?,?,?,?,?)";
PreparedStatement ps = null;
ResultSet rs = null;
//contas.setConSaldo(contas.getConSaldo() + creditos.getCreValor());
try {
ps = connection.prepareStatement(sql);
ps.setDate(1, new java.sql.Date(creditos.getCreData().getTime()));
ps.setInt(2, creditos.getConCodigo());
ps.setDouble(3, creditos.getCreValor());
ps.setString(4, creditos.getCreHistorico());
ps.setDouble(5, creditos.getConSaldo());
ps.execute();
} catch (SQLException ex) {
Logger.getLogger(CreditoDAO.class.getName()).log(Level.SEVERE, null, ex);
} finally {
//connection.close();
ps.close();
}
if(creditos != null){
double saldo = 0;
saldo = contaComSaldo.getConSaldo() + creditos.getCreValor();
//contaComSaldo.setConSaldo(saldo); isto funciona mas não atualiza o valor no BD
//System.out.println("Objeto conta:"+ contaComSaldo.getConSaldo());
}
String sqlas = "update contas set consaldo=? where concodigo=?";
PreparedStatement psas = null;
try {
psas = connection.prepareStatement(sqlas);
psas.setDouble(1, contaComSaldo.getConSaldo());//Quero atualizar este valor no BD e não consigo
psas.setInt(2, contaComSaldo.getConCodigo());
psas.execute();
} catch (SQLException ex) {
Logger.getLogger(ContaDAO.class.getName()).log(Level.SEVERE, null, ex);
} finally {
connection.close();
ps.close();
}
}
}
Alguém pode me ajudar?