Oi pessoal alguém sabe como eu faço os botões de atualizar e excluir dentro do controller em java?
private void deletar(){
String SQL = "DELETE FROM tbl WHERE ...'";
}
private void atualizar(){
String SQL = "UPDATE tbl SET coluna=x WHERE ...";
}
É só colocar isso pro excluir e atualizar dentro do controller.
Porque no salvar eu coloquei isso olha:
public void salvaMorador() {
String usuariocompleto = tela.getjTextFieldUSUARIOCOMPLETO().getText();
String rg = tela.getjTextFieldRG().getText();
String cpf = tela.getjTextFieldCPF().getText();
String nomedocondominio = tela.getjTextFieldNOMEDOCONDOMINIO().getText();
String numerodoapartamento = tela.getjTextFieldAPTO().getText();
String bloco = tela.getjTextFieldBLC().getText();
String telefone = tela.getjTextFieldTELEFONE().getText();
String nomedoproprietario = tela.getjTextFieldNOMEDOPROPRIETARIO().getText();
String nomedoveiculo = tela.getjTextFieldNOMEDOVEICULO().getText();
String placa = tela.getjTextFieldPLACA().getText();
String marca = tela.getjTextFieldMARCA().getText();
String cor = tela.getjTextFieldCOR().getText();
String entradacarro = tela.getjTextFieldENTRADACARRO().getText();
String saidacarro = tela.getjTextFieldSAIDACARRO().getText();
String entradamoradores = tela.getjTextFieldENTRADAMORADORES().getText();
String saidamoradores = tela.getjTextFieldSAIDAMORADORES().getText();
Morador morador = new Morador(usuariocompleto, rg, cpf, nomedocondominio, numerodoapartamento, bloco, telefone, nomedoproprietario,nomedoveiculo,placa,marca,cor,entradacarro,saidacarro,entradamoradores,saidamoradores);
try {
Connection conexao = new Conexao().getConnection();
MoradorDAO moradorDAO = new MoradorDAO(conexao);
moradorDAO.insert(morador);
JOptionPane.showMessageDialog(null, "Moradores Salvo com Sucesso!");
} catch (SQLException ex) {
Logger.getLogger(CadastroMoradorController.class.getName()).log(Level.SEVERE, null, ex);
}
}
Po, eu editei pra ficar formatado e vc tira a ediçao. Toda vez que for postar codigo no site formata ele antes de enviar
Bom, vc ja faz o de salvar, agora é so adaptar pra os outros
motadorDAO.insert/update/delete
Assim :
public void atualizarMorador(){
String usuariocompleto = tela.getjTextFieldUSUARIOCOMPLETO().getText();
String rg = tela.getjTextFieldRG().getText();
String cpf = tela.getjTextFieldCPF().getText();
String nomedocondominio = tela.getjTextFieldNOMEDOCONDOMINIO().getText();
String numerodoapartamento = tela.getjTextFieldAPTO().getText();
String bloco = tela.getjTextFieldBLC().getText();
String telefone = tela.getjTextFieldTELEFONE().getText();
String nomedoproprietario = tela.getjTextFieldNOMEDOPROPRIETARIO().getText();
String nomedoveiculo = tela.getjTextFieldNOMEDOVEICULO().getText();
String placa = tela.getjTextFieldPLACA().getText();
String marca = tela.getjTextFieldMARCA().getText();
String cor = tela.getjTextFieldCOR().getText();
String entradacarro = tela.getjTextFieldENTRADACARRO().getText();
String saidacarro = tela.getjTextFieldSAIDACARRO().getText();
String entradamoradores = tela.getjTextFieldENTRADAMORADORES().getText();
String saidamoradores = tela.getjTextFieldSAIDAMORADORES().getText();
Morador morador = new Morador(usuariocompleto, rg, cpf, nomedocondominio, numerodoapartamento, bloco, telefone, nomedoproprietario,nomedoveiculo,placa,marca,cor,entradacarro,saidacarro,entradamoradores,saidamoradores);
try {
Connection conexao = new Conexao().getConnection();
MoradorDAO moradorDAO = new MoradorDAO(conexao);
moradorDAO.update(morador);
JOptionPane.showMessageDialog(null, "Moradores Atualizado com Sucesso!");
} catch (SQLException ex) {
Logger.getLogger(CadastroMoradorController.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void excluirMorador(){
String usuariocompleto = tela.getjTextFieldUSUARIOCOMPLETO().getText();
String rg = tela.getjTextFieldRG().getText();
String cpf = tela.getjTextFieldCPF().getText();
String nomedocondominio = tela.getjTextFieldNOMEDOCONDOMINIO().getText();
String numerodoapartamento = tela.getjTextFieldAPTO().getText();
String bloco = tela.getjTextFieldBLC().getText();
String telefone = tela.getjTextFieldTELEFONE().getText();
String nomedoproprietario = tela.getjTextFieldNOMEDOPROPRIETARIO().getText();
String nomedoveiculo = tela.getjTextFieldNOMEDOVEICULO().getText();
String placa = tela.getjTextFieldPLACA().getText();
String marca = tela.getjTextFieldMARCA().getText();
String cor = tela.getjTextFieldCOR().getText();
String entradacarro = tela.getjTextFieldENTRADACARRO().getText();
String saidacarro = tela.getjTextFieldSAIDACARRO().getText();
String entradamoradores = tela.getjTextFieldENTRADAMORADORES().getText();
String saidamoradores = tela.getjTextFieldSAIDAMORADORES().getText();
Morador morador = new Morador(usuariocompleto, rg, cpf, nomedocondominio, numerodoapartamento, bloco, telefone, nomedoproprietario,nomedoveiculo,placa,marca,cor,entradacarro,saidacarro,entradamoradores,saidamoradores);
try {
Connection conexao = new Conexao().getConnection();
MoradorDAO moradorDAO = new MoradorDAO(conexao);
moradorDAO.delete(morador);
JOptionPane.showMessageDialog(null, "Moradores Deleto com Sucesso!");
} catch (SQLException ex) {
Logger.getLogger(CadastroMoradorController.class.getName()).log(Level.SEVERE, null, ex);
}
}
@fabianamp, formata o seu código antes de enviar, por gentileza.
Dá erro na hora de deletar? Mostra o que tem aqui:
moradorDAO.delete(morador);
O que eu tinha falado acima eram exemplos, vc tem que ter esse método de delete
o que fala pra mim é isso:
mais não acontece nada eu mando executar programa de novo e os dados ainda continuam ali nas tabelas
meu delete
public void delete(Morador morador) throws SQLException{
String sql = "delete from morador where id = ?";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setInt(1, morador.getId());
statement.execute();
}
meu update
public void update(Morador morador) throws SQLException{
String sql = "update morador set usuariocompleto = ?,rg = ?,cpf = ?,nomedocondominio = ?,numerodoapartamento = ?,bloco = ?,telefone = ?,nomedoproprietario = ?,nomedoveiculo = ?,placa = ?,marca = ?,cor = ?,entradacarro = ? ,saidacarro = ?,entradamoradores = ?,saidamoradores = ? where id = ? ";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, morador.getUsuariocompleto());
statement.setString(2, morador.getRg());
statement.setString(3, morador.getCpf());
statement.setString(4, morador.getNomedacondominio());
statement.setString(5, morador.getNumerodoapartamento());
statement.setString(6, morador.getBloco());
statement.setString(7, morador.getTelefone());
statement.setString(8, morador.getNomedoproprietario());
statement.setString(9, morador.getNomedoveiculo());
statement.setString(10, morador.getPlaca());
statement.setString(11, morador.getMarca());
statement.setString(12, morador.getCor());
statement.setString(13, morador.getEntradacarro());
statement.setString(14, morador.getSaidacarro());
statement.setString(15, morador.getEntradamoradores());
statement.setString(16, morador.getSaidamoradores());
statement.setInt(17, morador.getId());
statement.execute();
}
@fabianamp, formata o seu código antes de enviar, por gentileza!!!
troca isso:
por isso:
stmt.executeUpdate(sql);
stmt.executeUpdate(sql); não é por esse stmt.executeQuery();
ignora o sql, usa só o
statement.executeUpdate();
public void update(Morador morador) throws SQLException{
String sql = "update morador set usuariocompleto = ?,rg = ?,cpf = ?,nomedocondominio = ?,numerodoapartamento = ?,bloco = ?,telefone = ?,nomedoproprietario = ?,nomedoveiculo = ?,placa = ?,marca = ?,cor = ?,entradacarro = ? ,saidacarro = ?,entradamoradores = ?,saidamoradores = ? where id = ? ";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, morador.getUsuariocompleto());
statement.setString(2, morador.getRg());
statement.setString(3, morador.getCpf());
statement.setString(4, morador.getNomedacondominio());
statement.setString(5, morador.getNumerodoapartamento());
statement.setString(6, morador.getBloco());
statement.setString(7, morador.getTelefone());
statement.setString(8, morador.getNomedoproprietario());
statement.setString(9, morador.getNomedoveiculo());
statement.setString(10, morador.getPlaca());
statement.setString(11, morador.getMarca());
statement.setString(12, morador.getCor());
statement.setString(13, morador.getEntradacarro());
statement.setString(14, morador.getSaidacarro());
statement.setString(15, morador.getEntradamoradores());
statement.setString(16, morador.getSaidamoradores());
statement.setInt(17, morador.getId());
statement.executeUpdate();
}
assim só no update ??? e no insert e delete ??
no delete tbm
public void delete(Morador morador) throws SQLException{
String sql = "delete from morador where id = ?";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setInt(1, morador.getId());
statement.executeUpdate();
}
funcionou? Faz o teste
o delete não funcionou não
deu erro? Tem que explicar melhor oq ta acontecendo… Como está o seu try catch? Ta printando o erro?
não deu erro nenhum, mais ele fala deleto com sucesso, mais quando eu abro de novo continua os dados do banco ali ainda