Como fazer um update e uma consulta?

Gente me da aí uma força!!! Preciso fazer um cadastro simples com os botões de gravar, alterar , consultar e excluir… Gravar e excluir estão funcionando, mas alterar e consultar esta dando erro!!!

da uma olhada no meu código… e olhem o que estou fazendo de errado!!! Valeu e obrigado pela força…

Minha interface

import source.Cliente;

  private void btnGravarActionPerformed(java.awt.event.ActionEvent evt) {                                          
        int codigo = Integer.parseInt(txtCodigo.getText());
        String nome = txtNome.getText();
        String sexo = (String)cbxSexo.getSelectedItem();
        
        Cliente c = new Cliente(codigo, nome, sexo);
        c.gravar();           
 } 

 private void btnAlterarActionPerformed(java.awt.event.ActionEvent evt) {                                           
        Cliente c = new Cliente();
         txtNome.setText(c.setNome());      
         cbxSexo.setText(c.setSexo());         
 } 

Classe Cliente

import db.Conexao;

public class Cliente {
    
        private int codigo;
        private String nome, sexo;
        private Conexao con = null;


   public Cliente(int codigo, String nome, String sexo) {
            this.setCodigo(codigo);
            this.setNome(nome);
            this.setSexo(sexo);
            con = new Conexao();
            con.getConnection();
            
    }

    public int getCodigo() {
        return codigo;
    }

    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getSexo() {
        return sexo;
    }

    public void setSexo(String sexo) {
        this.sexo = sexo;
    }
    
    public void gravar(){
        String sql= "Insert into cliente values ("+getCodigo()+", '"+getNome()+"', '"+getSexo()+"')";
        // System.out.println("sql = "+sql);
        con.executarSQL(sql);
        
    }
    

}

Conexão

import java.sql.*;
import java.sql.CallableStatement; 
import javax.swing.*;


public class Conexao implements java.io.Serializable {

    private Connection con = null;
    private Statement stm = null;
    private ResultSet rs = null;

    private String hostName = null;
    private String userName = null;
    private String password = null;
    private String url = null;
    private String jdbcDriver = null;
    private String dataBaseName = null;
    private String dataBasePrefix = null;
    private String dabaBasePort = null;


   public Conexao() {
        super();
        hostName = "localhost";
        dataBaseName = "java";
        userName = "root";
        password = "banco"; // SENAC e CASA
        jdbcDriver = "org.gjt.mm.mysql.Driver";
        dataBasePrefix = "jdbc:mysql://";
        dabaBasePort = "3306";

        url = dataBasePrefix + hostName + ":"+dabaBasePort+"/" + dataBaseName;
        getConnection();
    }

      public void getConnection() {
        try {
          if (con == null) {
            Class.forName(jdbcDriver);
            con = DriverManager.getConnection(url, userName, password);
          } else if (con.isClosed()) {
            Class.forName(jdbcDriver);
            con = DriverManager.getConnection(url, userName, password);
            }
        } catch (ClassNotFoundException e) {
           e.printStackTrace();
        } catch (SQLException e) {
          e.printStackTrace();
        }
   }

      public void closeConnection() {
        if (con != null) {
          try {
            con.close();
          } catch (SQLException e) {
             e.printStackTrace();
          }
        }
      }

    public ResultSet consultar(String query)
    {

        getConnection();
        ResultSet rs = null;
        try {
                Class.forName(jdbcDriver);
              Statement stm = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
              rs = stm.executeQuery(query);
              return rs;
      }
      catch (SQLException e)
      {
          JOptionPane.showMessageDialog(null, " Erro na execução do metodo consultar! \n" + e.getMessage());
          return null;
      }
      catch(ClassNotFoundException e) {
          JOptionPane.showMessageDialog(null, "excessao - Classe Nao Encontrada: "+e.getMessage());
         e.printStackTrace();
          return null;
      }

        finally {
        }
  }
     public void executarSQL(String sql){

        getConnection();
         try {
              Class.forName(jdbcDriver);
              Statement stm = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
              stm.executeUpdate(sql);

        } catch(ClassNotFoundException e) {
            JOptionPane.showMessageDialog(null, "excessão Classe não encontrada: "+e.getMessage());
            e.printStackTrace();
        } catch(SQLException e) {
            JOptionPane.showMessageDialog(null, "Erro na execução do método executarSQL() - "+e.getMessage());
            e.printStackTrace();
        } finally {
               
        }
     }

}

Keke,

dá uma olhadinha neste link abaixo. Tem um material, apostila, que pode ser baixado, onde fala algumas coisas sobre JDBC e como utilizar o padrão DAO para fazer operações no banco de dados.

É bastante interessante e bem didático. Acho que te ajudará bastante.

[code]public void gravar(){
String sql= “Insert into cliente values (”+getCodigo()+", ‘"+getNome()+"’, ‘"+getSexo()+"’)";
// System.out.println("sql = "+sql);
con.executarSQL(sql);

 }

[/code]
não via a msg de erro, mas acho que o erro deve estar aqui…
tente indicar qual dado será inserido aonde:

insert into cliente ( codigo, nome, sexo ) values ( 10, 'Manuel', "F')

depois de dar uma olhada na apostila 21 da Caelum olhe isso http://www.google.com.br/search?hs=T7a&hl=pt-BR&client=firefox-a&rls=org.mozilla%3Apt-BR%3Aofficial&q=resultset+updateable&btnG=Pesquisar&meta=
talvez possa ajudar

abs