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

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!

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…

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!

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

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

[code] 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();
}[/code]

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

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.

Valeu mesmo galera pelas dicas