Dados de uma Pesquisa não aparecem no JTextField

21 respostas
ferhelloween

Olá galera estou com um problema em um programinha que estou desenvolvendo

A parte do cadastro está OK porém a parte de consulta não está dando certo

já tentei algumas técnicas que peguei na Internet mas até agora nenhuma funcionou.

Aproveitando gostaria de inserir um JTable embaixo do JTextField para exibir os registros e seleciona-los por lá.

E gostaria de saber quais ferramentas eu posso utilizar pra fazer um relatório bonitinho(tipo o relatório do access)

Ah sim o código do botão Pesquisar está assim

private void btnIrParaActionPerformed(java.awt.event.ActionEvent evt) {                                          
        Clientes cliente = new Clientes();
        cliDB.irParaCliente();
        edtNome.setText(cliente.getNome());
        edtCodigo.setText(String.valueOf(cliente.getCodigo()));
        edtSite.setText(cliente.getSite());
        edtEndereco.setText(cliente.getEndereco());
        edtNumero.setText(String.valueOf(cliente.getNumero()));
        edtBairro.setText(cliente.getBairro());
        edtCep.setText(cliente.getCep());
        edtCidade.setText(cliente.getCidade());
        edtEstado.setText(cliente.getEstado());
        edtContato.setText(cliente.getContato());
        edtCargo.setText(cliente.getCargo());
        edtEmail.setText(cliente.getEmail());
        edtTelefone.setText(cliente.getTelefone());
        edtCelular.setText(cliente.getCelular());
        edtObservacao.setText(cliente.getObservacao());
        this.habCampos();
    }

e na classe do ClienteDB está assim

public Clientes irParaCliente()
    {
      Clientes cliente = null;
      int codigo = Integer.parseInt( JOptionPane.showInputDialog (null,
                            "Digite o código do cliente:"));
      if (codigo <= 0)
          JOptionPane.showInputDialog (null, "Código inválido !");
      else {
            Connection con = Conexao.getConnection();
            String sql = "SELECT * FROM clientes WHERE codigo= "+codigo;
            ResultSet rs;
            try {
                 PreparedStatement stmt = con.prepareStatement(sql);
                 rs = stmt.executeQuery(sql);
                 rs.next();
                 if (rs.isAfterLast())
                     JOptionPane.showMessageDialog (null, "Não cadastrado !");
                 else {  // cliente encontrado
                       cliente = new Clientes();
                       // obter dados do banco e gravar no objeto cliente
                       cliente.setNome(rs.getString("nome"));
                       cliente.setCodigo(rs.getInt("codigo"));
                       cliente.setSite(rs.getString("site"));
                       cliente.setEndereco(rs.getString("endereco"));
                       cliente.setNumero(rs.getInt("numero"));
                       cliente.setBairro(rs.getString("bairro"));
                       cliente.setCep(rs.getString("cep"));
                       cliente.setCidade(rs.getString("cidade"));
                       cliente.setEstado(rs.getString("estado"));
                       cliente.setContato(rs.getString("contato"));
                       cliente.setContato(rs.getString("cargo"));
                       cliente.setEmail(rs.getString("email"));
                       cliente.setTelefone(rs.getString("telefone"));
                       cliente.setCelular(rs.getString("celular"));
                       cliente.setObservacao(rs.getString("observacao"));
                      
                      
                 }
                 rs.close();
                 stmt.close();
            } catch (SQLException e) {
                 JOptionPane.showMessageDialog (null, "Ocorreu um erro no banco " +
                          "de dados");
                 System.out.println("Erro no SQL");
            }
      }
      return cliente;
    }

Flwww

21 Respostas

A

Vou analisar o código…

H

Olá. Eu ia responder o seu outro tópico agora, mas como você criou esse, irei responder aqui.

private void btnIrParaActionPerformed(java.awt.event.ActionEvent evt) {                                          
        
        Clientes cliente =  cliDB.irParaCliente();  // aqui vc recebe o retorno de ClienteDB.irParaCliente();

        edtNome.setText(cliente.getNome());
        edtCodigo.setText(String.valueOf(cliente.getCodigo()));
        edtSite.setText(cliente.getSite());
        edtEndereco.setText(cliente.getEndereco());
        edtNumero.setText(String.valueOf(cliente.getNumero()));
       
        // ..........

        this.habCampos();
}

Por curiosidade, o que o " this.habCampos();" faz?

Quanto a JTable, você precisa dar uma pesquisada para criar a sua própria TableModel. Alguns links úteis.

http://www.guj.com.br/article.show.logic?id=140

http://www.guj.com.br/article.show.logic?id=147

http://www.guj.com.br/posts/list/149034.java#808003

http://www.guj.com.br/posts/list/15/199067.java#1001295

http://www.guj.com.br/posts/list/212276.java

Espero ter ajudado.

A

Eu acho que a solução que o nosso amigo acima deu vai dar certo, caso não de certo, avisa ai que vamos retorna uma lista de clientes, ao invés de retorna um objeto…

ferhelloween

Ajudaram sim

agora vou tentar criar os métodos de Exclusão e Alteração

qualqer batida de cabeça dou um Sinal aqui também

e…

Acho que não tive bons professores de Java

A

KKKKKKKKKKKK, o meu foi bom… :twisted:

ferhelloween

Pois é tentei e tentei mas o método de excluir e alterar continuam dando a mensagem de erro no SQL

//métdo de exclusão
public void excluirCliente(String cod)
    {
        String mensagem = null;
      int resp = JOptionPane.showConfirmDialog (null,
                    "Deseja realmente excluir?", "Exclusão",
                    JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE );
      if ( resp == JOptionPane.YES_OPTION ) {
           Connection con = Conexao.getConnection();
           PreparedStatement stmt = null;
           try {
                String sql = "DELETE FROM Clientes WHERE codigo = " + cod ;
                stmt = con.prepareStatement(sql);
           } catch (SQLException e) {
                System.out.println("Erro no SQL");
           }
           int result = 0;
           try {
                result = stmt.executeUpdate();
                if (result == 1)
                    mensagem = "Cliente excluído!";
                else
                    mensagem = "Cliente não excluído!";
                stmt.close();
                con.close();
           } catch (SQLException e) {
                System.out.println("Erro no SQL");
           }
      }
      else mensagem = "Cliente não excluído!";
      JOptionPane.showMessageDialog ( null, mensagem);
    }

//método de alteração
 public void alterarCliente(Clientes cliente)
    {
        String mensagem = null;
        int resposta = JOptionPane.showConfirmDialog(null, "Deseja realmente " +
                "alterar?","Alteração", JOptionPane.YES_NO_OPTION,
                JOptionPane.QUESTION_MESSAGE);
                if ( resposta == JOptionPane.YES_OPTION) {
                    Connection con = Conexao.getConnection();
                    PreparedStatement stmt = null;
                    try {
                        String sql = "UPDATE clientes" +
                                "SET nome = '" + cliente.getNome() +
                                "', site = '" + cliente.getSite() +
                                "', endereco = '" + cliente.getEndereco() +
                                "', numero = '" + cliente.getNumero() +
                                "', bairro = '" + cliente.getBairro() +
                                "', cep = '" + cliente.getCep() +
                                "', cidade = '" + cliente.getCidade() +
                                "', estado = '" + cliente.getEstado() +
                                "', contato = '" + cliente.getContato() +
                                "', cargo = '" + cliente.getCargo() +
                                "', email = '" + cliente.getEmail() +
                                "', telefone = '" + cliente.getTelefone() +
                                "', celular = '" + cliente.getCelular() +
                                "', observacao ='" + cliente.getObservacao() +
                                "WHERE codigo = " + cliente.getCodigo();
                        stmt = con.prepareStatement(sql);
                    } catch (SQLException e)
                    {
                        System.out.println("Erro no SQL");
                    }
                    try {
                        int result = stmt.executeUpdate();
                            if (result == 1)
                                mensagem = "Dados Alterados!";
                            else
                                mensagem = "Dados não Alterados!";
                            stmt.close();
                            con.close();
                   }catch(SQLException e){
                       System.out.println("Erro no SQL");
                   }
                }
              else mensagem = "Dados não Alterados!";
              JOptionPane.showMessageDialog(null, mensagem);
                    
    }

Botões

private void btnExcluirActionPerformed(java.awt.event.ActionEvent evt) {                                           
       cliDB.excluirCliente(title);
    }                                          

 private void btnAlterarActionPerformed(java.awt.event.ActionEvent evt) {                                           
        Clientes cliente = new Clientes();
         cliente.setNome(edtNome.getText());
         cliente.setCodigo(Integer.parseInt(edtCodigo.getText()));
         cliente.setSite(edtSite.getText());
         cliente.setEndereco(edtEndereco.getText());
         cliente.setNumero(Integer.parseInt(edtNumero.getText()));
         cliente.setBairro(edtBairro.getText());
         cliente.setCep(edtCep.getText());
         cliente.setCidade(edtCidade.getText());
         cliente.setEstado(edtEstado.getText());
         cliente.setContato(edtContato.getText());
         cliente.setCargo(edtCargo.getText());
         cliente.setTelefone(edtTelefone.getText());
         cliente.setCelular(edtCelular.getText());
         cliente.setEmail(edtEmail.getText());
         cliente.setObservacao(edtObservacao.getText());
        cliDB.alterarCliente(cliente);
        //desabilita o código
        edtCodigo.setEnabled(false);
       
    }

Sbre a JTable fiz uma classe com os campos e vou passar para o JTable

qualquer duvida relacionado ao JTable eu posto aqui

Até +

H

Olá. Coloca as exceptions que ele está lançando para essas duas ações.

[EDITANDO]

Sempre coloque “;” no final de toda instrução sql.

E na linha 59 está faltanto fechar aspas depois do getObservacao().

ferhelloween

Ambos não dão nenhuma mensagem no Exceptions

só o “Erro no SQL”

H

Coloca “e.printStackTrace();” no lugar do System.out.println(“Erro no SQL”); que ele imprime a exceção.

ferhelloween

Bom no de alteração deu só o Erro no SQL mesmo

mas o de exclusão apareceu isso

Erro no SQL
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'de Clientes' at line 1
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
        at com.mysql.jdbc.Util.getInstance(Util.java:381)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2542)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1734)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2019)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1937)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1922)
        at Classes.ClienteDB.excluirCliente(ClienteDB.java:140)
        at Formularios.ClientesGUI.btnExcluirActionPerformed(ClientesGUI.java:369)
        at Formularios.ClientesGUI.access$500(ClientesGUI.java:8)
        at Formularios.ClientesGUI$6.actionPerformed(ClientesGUI.java:165)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:6267)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6032)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
H

Testei o seu código para excluir e não deu erro nenhum. Você está usando Linux ou Windows?

ferhelloween

Estou usando Windows

mas tenho o Linux também instalado na minha máquina. Caso queira eu testo ele no Linux.

Testei no Linux

da os mesmo erros

Até +

ferhelloween

Malz o Double Post mas é necessário

testando o código e fazendo pequenas alterações foi retornado isso no Alterar Cliente

Erro no SQL
java.sql.SQLException: No value specified for parameter 1
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
        at com.mysql.jdbc.PreparedStatement.fillSendPacket(PreparedStatement.java:2176)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1993)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1937)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1922)
        at Classes.ClienteDB.alterarCliente(ClienteDB.java:106)
        at Formularios.ClientesGUI.btnAlterarActionPerformed(ClientesGUI.java:376)
        at Formularios.ClientesGUI.access$000(ClientesGUI.java:8)
        at Formularios.ClientesGUI$1.actionPerformed(ClientesGUI.java:124)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:6267)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6032)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
H

Você está usando o PreparedStatement de forma errada.

Dá uma lida aqui.
http://download.oracle.com/javase/1.3/docs/api/java/sql/PreparedStatement.html

Seu sql de update deveria ser algo assim:

PreparedStatement stmt = null;

String sql = "UPDATE clientes SET nome = ?, site = ?, ... adicionar os outros campos... WHERE codigo = ?";

stmt = con.prepareStatement(sql); 

stmt.setString(1, cliente.getNome());
stmt.setString(2, cliente.getSite());

// continua até setar todos os parametros

stmt.executeUpdate();

Espero ter ajudado

ferhelloween

Fiz a alteração

mais Uma duvida

preciso fazer uma referencia de stmt.setInt para o código?

Fiz aqui e se colocar ela após ele da que os Dados não podem ser cadastrados e se não colocar ele da erro no SQL.

Até +

H

Ok. Posta o código do método alterar da classe ClienteDB, e o erro gerado.

ferhelloween
public void alterarCliente(Clientes cliente)
    {
        String mensagem = null;
        int resposta = JOptionPane.showConfirmDialog(null, "Deseja realmente " +
                "alterar?","Alteração", JOptionPane.YES_NO_OPTION,
                JOptionPane.QUESTION_MESSAGE);
                if ( resposta == JOptionPane.YES_OPTION) {
                    Connection con = Conexao.getConnection();
                    PreparedStatement stmt = null;
                    try {
                        String sql = "UPDATE clientes SET nome = ?, site = ?," +
                                "endereco =?, numero = ?, bairro= ?, cep = ?," +
                                "cidade = ?, estado = ?, cargo = ?, contato = ?," +
                                "email = ?, telefone = ?, celular =?, " +
                                "observacao = ? WHERE codigo = ?";
                       stmt = con.prepareStatement(sql);
                       //parametros
                       stmt.setString(1, cliente.getNome());
                       stmt.setString(3, cliente.getSite());
                       stmt.setString(4, cliente.getEndereco());
                       stmt.setInt(5, cliente.getNumero());
                       stmt.setString(6, cliente.getBairro());
                       stmt.setString(7, cliente.getCep());
                       stmt.setString(8, cliente.getCidade());
                       stmt.setString(9, cliente.getEstado());
                       stmt.setString(10,cliente.getContato());
                       stmt.setString(11,cliente.getCargo());
                       stmt.setString(12,cliente.getEmail());
                       stmt.setString(13,cliente.getTelefone());
                       stmt.setString(14,cliente.getCelular());
                       stmt.setString(15,cliente.getObservacao());
                       //realiza a alteração
                       stmt.executeUpdate();

                    } catch (SQLException e)
                    {
                        System.out.println("Erro no SQL");
                        e.printStackTrace();
                    }
                    try {
                        int result = stmt.executeUpdate();
                            if (result == 1)
                                mensagem = "Dados Alterados!";
                            else
                                mensagem = "Dados não Alterados!";
                            stmt.close();
                            con.close();
                   }catch(SQLException e){
                       System.out.println("Erro no SQL");
                       e.printStackTrace();
                   }
                }
              else mensagem = "Dados não Alterados!";
              JOptionPane.showMessageDialog(null, mensagem);
                    
    }

Exceptions

Erro no SQL
java.sql.SQLException: No value specified for parameter 2
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
        at com.mysql.jdbc.PreparedStatement.fillSendPacket(PreparedStatement.java:2176)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1993)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1937)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1922)
        at Classes.ClienteDB.alterarCliente(ClienteDB.java:105)
        at Formularios.ClientesGUI.btnAlterarActionPerformed(ClientesGUI.java:374)
        at Formularios.ClientesGUI.access$000(ClientesGUI.java:8)
        at Formularios.ClientesGUI$1.actionPerformed(ClientesGUI.java:124)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:6267)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6032)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
Erro no SQL
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
java.sql.SQLException: No value specified for parameter 2
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
        at com.mysql.jdbc.PreparedStatement.fillSendPacket(PreparedStatement.java:2176)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1993)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1937)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1922)
        at Classes.ClienteDB.alterarCliente(ClienteDB.java:113)
        at Formularios.ClientesGUI.btnAlterarActionPerformed(ClientesGUI.java:374)
        at Formularios.ClientesGUI.access$000(ClientesGUI.java:8)
        at Formularios.ClientesGUI$1.actionPerformed(ClientesGUI.java:124)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:6267)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6032)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
CONSTRUÍDO COM SUCESSO (tempo total: 21 segundos)
H
Erro no SQL
java.sql.SQLException: No value specified for parameter 2

Nenhum valor especificado para o parametro 2.

//parametros
stmt.setString(1, cliente.getNome());
stmt.setString(2, cliente.getSite());  // Você tinha pulado aqui
stmt.setString(3, cliente.getEndereco());
stmt.setInt(4, cliente.getNumero());
stmt.setString(5, cliente.getBairro());
stmt.setString(6, cliente.getCep());
stmt.setString(7, cliente.getCidade());
stmt.setString(8, cliente.getEstado());
stmt.setString(9,cliente.getContato());
stmt.setString(10,cliente.getCargo());
stmt.setString(11,cliente.getEmail());
stmt.setString(12,cliente.getTelefone());
stmt.setString(13,cliente.getCelular());
stmt.setString(14,cliente.getObservacao());
stmt.setInt(15,cliente.getCodigo()); // faltou dizer qual cliente será alterado
//realiza a alteração
stmt.executeUpdate();

Tenta ai, se der erro, posta o código que você fez e o erro.

ferhelloween

Erros não aparecem

mas ele da como Dados não Alterados

H

Mas os dados no banco foram alterados?

ferhelloween

Desculpa a demora para responder

fiz uns testes e

não foram alterados T_T

Criado 18 de outubro de 2010
Ultima resposta 5 de nov. de 2010
Respostas 21
Participantes 3