Ir para conteúdo
Fórum Script Brasil
  • 0

Problemas com UPDATE no java com Mysql


Lizypanta

Pergunta

Boa tarde, tenho um sistema o qual a condição do update está no botão Cadastrar  isto é, quando faço alguma alteração clico no botão cadastrar para depois clicar no atualizar, gostaria que quando fizesse alguma alteração não fosse necessário clicar no cadastrar e sim apenas no botão atualizar. Abaixo código. Alguém poderia me ajudar?!Obg!

**RESERVADAO**

 public boolean atualizar(Object obj) {
        Reserva reservaVO;
        //Verifica se o objeto passado é do tipo Reserva
        if (obj instanceof Reserva) {
            reservaVO = (Reserva) obj; //converte de Object para Reserva
        } else {
            return false;
        }
        String sql = "UPDATE reserva SET tipoReserva = '" + reservaVO.getTipoReserva()
                + "', dataReserva = '" + reservaVO.getDataReserva()
                + "', dataEntrada = '" + reservaVO.getDataEntrada()
                + "', dataSaida = '" + reservaVO.getDataSaida()
                + "', horarioEntrada = '" + reservaVO.getHorarioEntrada()
                + "', horarioSaida = '" + reservaVO.getHorarioSaida()
                + "', qtdPessoas = '" + reservaVO.getQtdPessoas()
                + "', status = '" + reservaVO.getStatus()
                + "', codHospede = '" + reservaVO.getCodHospede()
                + "', codApartamento = '" + reservaVO.getCodApartamento()
                + "' WHERE codReserva = '" + reservaVO.getCodReserva() + "'";
        try {
            //Abre a conexao com o banco
            getBanco().abrir();
            Statement stm = getBanco().getConexao().createStatement();
            if (stm.executeUpdate(sql) > 0) {
                getBanco().fechar();
                return true;
            } else {
                getBanco().fechar();
                return false;
            }
        } catch (SQLException ex) {
            getBanco().fechar();
            ex.printStackTrace();
            return false;
        }

    }

**BOTÃO CADASTRAR**
private void btnCadastrarActionPerformed(java.awt.event.ActionEvent evt) {                                             
        ReservaDAO reservaDAO = new ReservaDAO();
        Reserva reserva1 = new Reserva();
        Calendar cal;
        int d, m, a;
         if (txtCodApartamento.getText().isEmpty() || txtNumero.getText().isEmpty()
                || txtCodHospede.getText().isEmpty() || txtNomeHospede.getText().isEmpty() ){
            JOptionPane.showMessageDialog(this, "Erro!! Por favor preencha os campos corretamente!!!");
        } else {
 reserva1.setCodHospede(Integer.parseInt(txtCodHospede.getText()));
            reserva1.setCodApartamento(Integer.parseInt(txtCodApartamento.getText()));           reserva1.setTipoReserva(String.valueOf(cmbTipoReserva.getSelectedItem()));
            cal = dcDataReserva.getCalendar();
            d = cal.get(Calendar.DAY_OF_MONTH);
            m = cal.get(Calendar.MONTH);
            a = cal.get(Calendar.YEAR) - 1900;
            reserva1.setDataReserva(new Date(a, m, d));

            cal = dcDataEntrada.getCalendar();
            d = cal.get(Calendar.DAY_OF_MONTH);
            m = cal.get(Calendar.MONTH);//o mes
            a = cal.get(Calendar.YEAR) - 1900;
            reserva1.setDataEntrada(new Date(a, m, d));

            cal = dcDataSaida.getCalendar();
            d = cal.get(Calendar.DAY_OF_MONTH);
            m = cal.get(Calendar.MONTH);//o mes
            a = cal.get(Calendar.YEAR) - 1900;
            reserva1.setDataSaida(new Date(a, m, d));
  
            reserva1.setHorarioEntrada(txtHorarioEntrada.getText());
            reserva1.setHorarioSaida(txtHorarioSaida.getText());
            reserva1.setQtdPessoas(txtQtdPessoas.getText());
            reserva1.setStatus(String.valueOf(cmbStatus.getSelectedItem()));
            if (!txtCodReserva.getText().isEmpty()){    
                    reserva1.setCodReserva(Integer.parseInt(txtCodReserva.getText()));
                    reservaDAO.atualizar(reserva1);
                    btnAtualizarActionPerformed(null);
                } else {
                    reservaDAO.cadastrar(reserva1);
                }
                JOptionPane.showMessageDialog(this, "Reserva cadastrado com sucesso!!!");       
                limparCampos();
        dcDataReserva.setCalendar(null);
            dcDataEntrada.setCalendar(null);
            dcDataSaida.setCalendar(null);
            conReserva.executaSQL("select *from reserva");
            try {
                modeloTabelaReserva.setResult(conReserva.resultset);
            } catch (SQLException ex) {
            }
        }
        dcDataReserva.requestFocus();
        desabilitarCampos();//Desabilita campos e abaixo os botoes
    }                  

**BOTÃO ATUALIZAR**
private void btnAtualizarActionPerformed(java.awt.event.ActionEvent evt) {                                             
       habilitarCampos();//Habilita o campos
        ModeloTabelaReserva modeloTabelaHospedePesquisa;
        conReserva.abrir();
        conReserva.executaSQL("SELECT R.codReserva AS Reserva , H.codHospede AS codHospede, H.nome AS Hospede, " 
               + "A.codApartamento as codApartamento, " 
               + "A.numeroApto AS Apartamento, " 
               + "R.tipoReserva, R.dataReserva, R.dataEntrada, " 
               + "R.dataSaida, R.horarioEntrada, R.horarioSaida, " 
               + "R.qtdPessoas, R.status "                
               + "FROM reserva AS R " 
               + "INNER JOIN Hospede AS H ON R.codHospede = H.codHospede  " 
               + "INNER JOIN Apartamento AS A ON R.codApartamento = A.codApartamento ");
        try{
        modeloTabelaHospedePesquisa = new ModeloTabelaReserva(conReserva.resultset);
        jTableReservas.setModel(modeloTabelaHospedePesquisa);
        }catch (SQLException ex) {
                    Logger.getLogger(JFCadHospedes.class.getName()).log(Level.SEVERE, null, ex);
        }
    }            

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

se você tiver mais de uma tabela coloca um uptade debaixo do outro 

faz isso dentro de um botao atualizar , se ajudar !!!

public void atualizaTelaListacliente(PegarTudo pt){
          String sql ="update cad_tb_clientes set cad_st_nome= ?, cad_st_estadocivil=?, cad_st_status=?"
                  + " where cad_int_idcliente=?";    
          System.out.println(sql);
          try(PreparedStatement stmt = conexao.prepareStatement(sql)){
            stmt.setString(1, pt.getCad_st_nome());
            stmt.setString(2, pt.getCad_st_estadocivil());
            stmt.setString(3, pt.getCad_st_status());
            stmt.setInt(4, pt.getCad_int_idcliente());
            stmt.execute();
            stmt.close();
            conexao.close();
            
        } catch (SQLException ex) {
            Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
        }  
          String sql1 ="update cad_tb_endereco set cad_st_endereco=?, cad_st_cidade=? "
                  + "where cad_int_idcliente=?";
           System.out.println(sql1);
          try(PreparedStatement stmt = conexao.prepareStatement(sql1)){
            stmt.setString(1, pt.getCli_st_endereco());
            stmt.setString(2, pt.getCli_st_cidade());
            stmt.setInt(3, pt.getCad_int_idcliente());
            stmt.execute();
            stmt.close();
            conexao.close();
            
        } catch (SQLException ex) {
            Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
        }  
         
          String sql2 ="update cad_tb_telefone set cad_st_celular=?, cad_st_telefonefixo=?"
                  + " where cad_int_idcliente=?"; 
           System.out.println(sql2);
          try(PreparedStatement stmt = conexao.prepareStatement(sql2)){
            stmt.setString(1, pt.getCli_st_celular());
            stmt.setString(2, pt.getCli_st_telefonefixo());
            stmt.setInt(3, pt.getCad_int_idcliente());
            stmt.execute();
            stmt.close();
            conexao.close();
            
        } catch (SQLException ex) {
            Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
        }  
    }

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...