Erro com Login II.. ajuda

A minha intenção é buscar os dados do campo senha, dos registros da tabela “operador”, no BD, e comparar com o campo o q foi digitado no formulario de login… e a partir dai, abrir o formulario principal…

Por favor, analisem este codigo e me digam se está errado… pois naum estou conseguindo fazer a comparação dos dados( o q está no BD e o q digito no formulario de login

[code]
//obtendo os dados do form
logNome = txtNome.getText();
logSenha = txtSenha.getText();
logNovaSenha = txtNovaSenha.getText();
logConfirmaSenha = txtConfirmaSenha.getText();

// valida os dados digitados (Login e Senha) do operador
if (logNome != null) {

 String querySenha = "SELECT * FROM operador WHERE OpeLogin LIKE '" + logNome + "%'";
 try {
stm = con.createStatement();
rs = stm.executeQuery(querySenha);
registro = rs.next(); // posiciona no 1º registro
BDSenha = rs.getString("OpeSenha");

if (logSenha != BDSenha) {
				
// emite mensagem de erro e volta o foco no txtNome
JOptionPane.showMessageDialog(null, "Nome ou Senha INCORRETO, tente novamente");[/code]

bom, como o seu caso é saber se o login e a senha estão corretos evite usar like, e também passe a senha junto na sql, fica mais ou menos assim:

select * from TABELA where nome='"+login+"' and senha='"+senha+"' ";

//dai vc compara se a consulta retornou alguma coisa eh pq o 
//login está correto, senao nao exite esse usuario com essa senha

if(rs.next())
{
      //logou
}else
{
      //nao logou, usuario ou senha inválidos!
}

é interessante vc tambem pensar em SQL Injection, ou seja, verifique se o retorno foi somente de um registro se for mais de um alguma coisa está errada! =) ahh mas isso é só se seu projeto abranger muiiiiita segurança assim… =)

ps: esqueci de comentar, o jeito que vc estava usando o like ele ia pegar todos os nome que começassem com a string de login, pois vc está passando o % somente no final da string! =)

cya!

brigadaum pela dica kara…
vou fazer os teste… e te falo depois… dando certo ou naum…
valew mesmo…