Como leer a BBDD

Ger
11 de Enero del 2005
Hola,
bueno, tengo un pequeño problemilla cuando intento acceder mediante las select a una base de datos.
Lo que yo tengo puesto es lo siguiente:

Statement s = conn.createStatement();
String query="select id_name from user_table where id_name=' "+ user_login +"' ";
ResultSet rs=s.executeQuery(query);
id=rs.getString("id_name");

Todo dentro de un Try...Catch, y me devuelve el siguiente error:
SQL Error, cause:com.jnetdirect.jsql.x: Result set has no current row.
Cuando he recibido este error, he probado lo siguiente:

Statement s = conn.createStatement();
String query="select id_name from user_table where id_name=' "+ user_login +"' ";
ResultSet rs;
rs.first();
rs=s.executeQuery(query);
id=rs.getString("id_name");

Si lo dejo tal y como esta asi, cuando compilo el servlet me da un error en ResultSet rs; y me dice que puede que no haya sido inicializado. Como no me crea el .class hasta que no este correcto, tengo que poner en esta linea lo siguiente:
ResultSet rs=null;
Entonces si me compila, pero me devuelve un error 500 y no se a que puede ser debido.
En este caso, el servidor web (Resin), me devuelve el error java.lang.NullPointerException
Espero que puedan ayudarme. Muchas gracias

nicokiki
11 de Enero del 2005
Hola!!!!!!

Primero deberias verificar q el ResultSet contenga algo a partir de la consulta realizada utilizando
....
while (rs.next()){
// algo();
}

Segundo, deberias verificar q "id_name" sea el nombre de una columna de la tabla.

Tercero, haciendo referencia a lo ultimo, es logico q tire NullPointerException ya q nunca le hiciste un NEW al ResultSet. No podes hacer rs.first() sin un previo NEW o lo q seria equivalente conn.executeQuery(...)

Salu2!!!!!!!