Jump to content
Fórum Script Brasil
  • 0

Problemas com UPDATE no java com Mysql


Lizypanta
 Share

Question

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 to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...