Problema na verificação de Usuário

3 respostas
flh_hilla

Olá pessoal! Estou desenvolvendo uma tela de cadastro de usuário.

Caso o usuário digitado ja contenha no BD, aparece uma mensagem de Erro e pede pra digitar novamente.

Funciona o problema é que ele pega somente o primeiro registro do BD pra comparar:

EX: Usuário: arvore

BD Usuario
- arvore
- mamao
- limao

nesse caso ira aparecer a mensagem usuario ja cadastrado mas se eu faço!

EX: Usuário: mamao

BD Usuario
- arvore
- mamao
- limao

nesse caso ele aparece a mensagem usuário válido o que não poderia!

não consegui a achar o problema tentei algumas coisas, se algúem puder ajudar agradeceria muito desde ja grato

abaixo o codigo

if ((evt.getKeyCode()== evt.VK_ENTER) && (tfusuario.getText().length()>0)) {
            if (tfusuario.getText().length() > 0) {
            ConDesc.conecta();
            try {
                ConDesc.stm = ConDesc.con.createStatement();
                ConDesc.rs = ConDesc.stm.executeQuery("SELECT usuario FROM usuarios");
                if (ConDesc.rs.next()) {
                    if ((tfusuario.getText().equals(ConDesc.rs.getString("usuario")))) {
                        System.out.println(tfusuario.getText());
                        tfusuario.setEnabled(true);
                        tfusuario.requestFocus();
                        pwsenha.setEnabled(false);
                        bcadastro.setEnabled(false);
                        linfo.setText("Este usuário ja está cadastrado!");
                    } else {
                        System.out.println(ConDesc.rs.getString("usuario"));
                        System.out.println(tfusuario.getText());
                        linfo.setText("Usuário Válido! Informe a senha");
                        pwsenha.setEnabled(true);
                        pwsenha.setText(null);
                        pwsenha.requestFocus();
                        bcadastro.setEnabled(true);
                        

                    }
                }
                ConDesc.desconecta();
            } catch (SQLException e) {
                System.out.println(e);
            }
        }
        }

3 Respostas

leoviniga

tenta faze um SELECT COUNT(coluna) FROM tabela WHERE coluna = o TextField em que a pessoa escreveu pra cadastrar

se a consulta retornar um valor maior que zero ele manda o erro…

é uma idéia :wink:

flh_hilla

Tentei fazer algo do tipo mas ainda erro, ou não executa sql…

se alguém tiver alguma idéia, ou onde poderia estar errado no código…

agradeço desde ja

flh_hilla

alguém ai com mais alguma idéia?

Criado 12 de janeiro de 2011
Ultima resposta 14 de jan. de 2011
Respostas 3
Participantes 2