Login com while(rs.next()) ou if(rs.next())[Resolvido]

6 respostas
Enadrov

Boa tarde galera!!

Estou com uma duvida, Estou criando uma tela de login e fiquei na duvida se eu usar o seguinte código para verificar usuario:

if(rs.next())

funciona do mesmo jeito que:

while(rs.next())

Queria saber se os dois funcionam mesmo eu tendo varios usuario no banco de dados.

Desde já agradeço!

6 Respostas

R

isso dai nao tem nada a ver… vc nao pode ter 2 usuarios com a mesma senha no banco de dados e voce checa diretamente no banco de dados ( where login = “blabla” and senha = “blabla”)…

um if ja resolve

claro que se estiver fazendo um projeto web, tem outros metodos muito mais eficazes E SEGUROS que os frameworks fornecem pra validar usuario e senha…

JeffersonMendes

Ai vai depender muito da condição que voce colocou na sua Query …
Mas um conselho que te dou “Debug o seu Código” ira encontrar a resposta!

eversonsa

Sim os dois funciona mais depedendo de como voce executar a query voce pode otimizar com o framework, voce esta usando algum?

Enadrov

Valeu galera pelas dicas. Segui o meu código:

public void login(String login, String senha) throws SQLException{
		String sql = "select * from login where login=? and senha=?";
			
		PreparedStatement stmt = con.prepareStatement(sql);
			
		stmt.setString(1, login);
		stmt.setString(2, senha);	
		ResultSet rs = stmt.executeQuery();
			
			
		if(!rs.next()){
			JOptionPane.showMessageDialog(new br.com.locadora.view.Login(), "Usuario ou senha Invalida", "Erro", JOptionPane.ERROR_MESSAGE);
		}else{
			JOptionPane.showMessageDialog(new br.com.locadora.view.Login(), "Login realizado com sucesso", "Erro", JOptionPane.INFORMATION_MESSAGE);
		}
		
		rs.close();
		stmt.close();
		con.close();
	}

Não sei se é o jeito mas correto de se fazer. Se puderem me dar mas algumas dicas agradeço.

ViniGodoy

Use o if mesmo. Ele é feito para testar condições, e não fazer repetição. Numa validação de login e senha, você quer saber e se os dados estão lá, não iterar sobre eles.

Enadrov

Valeu mesmo galera pelas dicas

Criado 2 de fevereiro de 2013
Ultima resposta 4 de fev. de 2013
Respostas 6
Participantes 5