ayuda con los ResultSet
Hola, por favor si alguien puede ayudarme se lo agradecería mucho. El problema es el siguiente.
Estoy haciendo una conexión de jdeveloper 10g con Oracle9i. Hasta ahora la conexión fue exitosa, pero el problema es cuando uso los resultset. El código que tengo es el siguiente:
try
{
Class.forName(\"oracle.jdbc.driver.OracleDriver\");
Conexión=DriverManager.getConnection(\"jdbc:oracle:thin:@localhost:1521:cymc\",\"yanine\",\"yanine\");
Sentencia = Conexion.createStatement();
Resultado = Sentencia.executeQuery(\"SELECT* FROM factura\");
System.out.println(Resultado.getInt(\"nroFactura\"));
Conexion.close();
}
catch(ClassNotFoundException cnfe)
{
System.out.println(cnfe);
}
catch(SQLException sqle)
{
System.out.println(sqle);
}
Mi programa ya se conecta con oracle pero cuando quiero mostrar los resultados del resultset me sale el siguiente mensaje:
Java.sql.SQLException: Indice de columna no valido
No lo reconoce nroFactura, que es una columna de factura. Y también cuando uso la función Resultado.getRow() , me sale como resultado 0.
Nose porque sale este error, si mi base de datos ya esta conectado. Las tablas, la cree con script de SQL*Plus.
Necesito ayuda por favor, es urgente.
Estoy haciendo una conexión de jdeveloper 10g con Oracle9i. Hasta ahora la conexión fue exitosa, pero el problema es cuando uso los resultset. El código que tengo es el siguiente:
try
{
Class.forName(\"oracle.jdbc.driver.OracleDriver\");
Conexión=DriverManager.getConnection(\"jdbc:oracle:thin:@localhost:1521:cymc\",\"yanine\",\"yanine\");
Sentencia = Conexion.createStatement();
Resultado = Sentencia.executeQuery(\"SELECT* FROM factura\");
System.out.println(Resultado.getInt(\"nroFactura\"));
Conexion.close();
}
catch(ClassNotFoundException cnfe)
{
System.out.println(cnfe);
}
catch(SQLException sqle)
{
System.out.println(sqle);
}
Mi programa ya se conecta con oracle pero cuando quiero mostrar los resultados del resultset me sale el siguiente mensaje:
Java.sql.SQLException: Indice de columna no valido
No lo reconoce nroFactura, que es una columna de factura. Y también cuando uso la función Resultado.getRow() , me sale como resultado 0.
Nose porque sale este error, si mi base de datos ya esta conectado. Las tablas, la cree con script de SQL*Plus.
Necesito ayuda por favor, es urgente.
Al parecer no es que no reconozca la columa si no que la query no trae datos por eso el getrow devuelve 0, priemro deberias preguntar si el ResultSet trae datos con resultado.next() recuerda que el cursor del ResultSet inicialmente esta posicionado antes del priemer registro, con un next() lo pones en el priemr registro, si sabes que la query puede traer mas de un dato usa un while(Resultado.next()) si sabes que solo va a traer un resultado usa un if(Resultado.next()). espero haberte ayudado.
Luis
Luis
