manipulação no banco de dados

Pessoal, to precisando de uma ajuda aqui. Estou desenvolvendo uma aplicação aqui estou com o seguinte problema tenho uma classe que faz conexão com o banco de dados access:

public class Conexao {

final private String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
final private String url = "jdbc:odbc:agenda";
final private String senha = "";
final private String usuario ="";
private Connection con;
public PreparedStatement stm;
public ResultSet rs;

public void Conectar()
{

try {
    Class.forName(driver);
    con = DriverManager.getConnection(url,usuario,senha);
    JOptionPane.showMessageDialog(null,"Conexão com o banco efetuada com sucesso");
}
catch (ClassNotFoundException Driver)
{
    JOptionPane.showMessageDialog(null,"Não foi possivel encontrar o Driver para \n" +
            "Conexão com o Banco" + Driver);
}
catch (SQLException erro)
{
    JOptionPane.showMessageDialog(null,"Não foi possível conectar com o Banco" + erro);
}

}
public void desconecta()
{
    try {
        con.close();
        JOptionPane.showMessageDialog(null,"Fechada a conexão com o banco");
    } catch (SQLException ex) {
      JOptionPane.showMessageDialog(null,"não foi possível encerrar a conexão" + ex);
    }
}
public void Consultas(String sql){
    try {
    stm = con.prepareStatement(sql);
    rs = stm.executeQuery();
   
    } catch (SQLException ex) {
        Logger.getLogger(Conexao.class.getName()).log(Level.SEVERE, null, ex);
    }

}

}

tenho um botão que faz a chamada na classe:

private void bt_conectaActionPerformed(java.awt.event.ActionEvent evt) {

conec = new Conexao();
    conec.Conectar();
    conec.Consultas("select * from controle");
  
    try {
      a = (String) conec.rs.getString("usuario");
      b = (String)conec.rs.getString("senha");

      if(tf_usuario.getText().equals(a) && jp_senha.getText().equals(b)){
      new TelaPrincipal().show();
      dispose();

        }
       else {
       JOptionPane.showMessageDialog(null,"Usuário ou Senha Inválido!");
       }

    } catch (SQLException ex) {
        Logge

mas esta dando o seguinte erro:

java.sql.SQLException: [Microsoft][ODBC Driver Manager] Estado de cursor inválido

será que alguem pode me dizer oque esta acontecendo, que tipo de erro é esse??

Olá
Vc criou essa conexão para esse banco agenda… lá nas ferramentas administrativas??
Pelo jeito deve ser isso…

Flwsss

pior que eu criei, esta tudo certo la nas ferramentas administrativa.

Só um minuto , eu tenho outro jeito de fazer
acho que vc está usando access, né?

Tenho esse exemplo, nunca testei… se quiser ir testando, pode!! vou ver se testo tb

try{
            String dsn     = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Arquivos de Thiago/Programmer/bd.mdb";
            String usuario = "";
            String senha   = "";
            String sql     = "";
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
            Connection con = DriverManager.getConnection(dsn,usuario,senha);
            Statement st = con.createStatement();
            PreparedStatement ps = con.prepareStatement("SELECT * FROM tab WHERE nome=?");
            ps.setString(1, "Thiago");
            ResultSet rs = ps.executeQuery();
            while (rs.next()){
                System.out.println(rs.getString("Código"));
                System.out.println(rs.getString("Nome"));
            }
            st.close();
            con.close();
        }
        catch(Exception e){
            e.printStackTrace();
        }
	}

Eu simplifiquei mais o código… agora não precisa usar mais configurar as ferramentas administrativas
blz

blz, vou tentar aqui e depois eu posto o resultado.

e ai pessol, alguem ai que entende de banco de dados, por favor me ajudem, não consegui, será que alguem pode me dizer oque esta acontecendo??

Olá,
Mesmo aquele código que eu postei???

Fiz um passo a passo de como fazer a conexao…
e a classe que postei tem uma alteração que segue a baixo

//String dsn     = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Arquivos de Thiago/Programmer/bd.mdb";
String dsn = "jdbc:odbc:agenda"; 

Eu testei aqui no meu micro que é Vista com Java 1.6_03, e access 2007, mas salvei como 2003

Blz…

Flwssss
Espero que vc consiga

cara valeu… estou tentando, minha net ta dando pau desde ontem… se eu conseguir ja posto a resposta (se a net não der pau de novo né)…

como eu coloco os arquivos ai para download??? quem sabe vc dando uma olhada na classe inteira vc consegue ver o erro que eu não to conseguindo.

Eu mandei uma mensagem privada, mas todo caso
Clica em Attachments, dai ele abre uma guia abaixo pra vc fazer upload do arquivo

FLwsss

e ai thiago blz, desculpe a demora é que o meu pc achou de dar pau bem agora, mas com eu disse com vc estarei colocando em anexo a classe que faz a conexão e a classe que tenta acessar o banco e o banco propriamente, desculpe ta abusando da sua boa vontade, mas será que vc consegue ver o erro pra mim??

as classes…

classe.