Java - resulset incomprensible

 
Vista:

resulset incomprensible

Publicado por Hernan (7 intervenciones) el 08/03/2005 15:11:55
Hola amigos,
Tengo una duda muy fuerte, ya que estoy realizando un query a la base de datos (dentro de un servlet), me devuelve un result set y puedo mostrar en una jsp este resultado. Hasta ahi todo bien, pero si yo quiero comparar cada columna que esta devolviendo para ver si es igual a un dato que me pasaron como parametro, nunca lo encuentra, sin embargo, el dato en la base existe. Les paso parte del codigo para ilustrar un poco mas la duda. En él, la variable cant no se me incrementa.
Muchas Gracias !!!
---
String query = "SELECT * FROM Usuario where Nombre ="+usuario;
try{
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);

while (rs.next()){
String s = rs.getString(1);
if (usuario == s){
cant ++;
}
}
catch(SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

RE:resulset incomprensible

Publicado por Yamil Bracho (2315 intervenciones) el 08/03/2005 16:44:23
Es mas facil que uses una funcion de agregacion. Por ejemplo

String query = "SELECT COUNT(*) FROM Usuario where Nombre ='" +usuario + "'";
try{
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
int contador = 0;
while (rs.next()){
int contador = rs.getInt(1);
}
System.out.println( "contador=" + contador );
}
catch(SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:resulset incomprensible

Publicado por Aureliano (10 intervenciones) el 08/03/2005 17:23:02
El problema está en la comparacion de strings. No es válido usuario==s, en lugar de eso has de usar el método compareTo() de la clase String:
if (usuario.compareTo(s) == 0){
.
.
}

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:resulset incomprensible

Publicado por Hernan (7 intervenciones) el 08/03/2005 21:54:16
Muchas Gracias, ambas soluciones fueron de gran ayuda.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar