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
