style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

ResultSet (juego de resultados Agotado)

Hola compañeros
me estanque en esto:

Tengo mi conexión eclipse con Oracle 10g y si funciona
la primer consulta se realiza
PERO TRATO DE EJECUTAR UNA NUEVA EN EL MISMO METODO Y
ME ARROJA UNA EXCEPCION
JUEGO DE RESULTADOS AGOSTADO

investigue un poco y es por utilizar el result mas de una
vez pero cree otro inclusive con su respectivo Statement
y me envía que el nombre de columna no es valido...
aquí las imágenes de mi código y el resultado de mi error ojala me puedan ayudar porfavor

AdjuntoTamaño
eror.jpg78.64 KB
resultado error.png21.61 KB

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ruco

AYUDA ResultSet

Como puedo ejecutar 2 consultas en un metodo

Imagen de chicowed

Publica Codigo

Compañero puedes publicar tu código, para ver que es lo que estas haciendo, y así poder apoyarte.

Imagen de chicowed

No logro comprender que es lo

No logro comprender que es lo que en realidad quieres hacer pero por si te sirve aquí te dejo un ejemplo de una consulta simple.

public List<ContactoDTO> readAll() {
        ArrayList<ContactoDTO> contacto = new ArrayList();
        PreparedStatement ps;
        ResultSet rs;
        try {
            ps = cn.getCn().prepareStatement(sqlReadAll);
            rs = ps.executeQuery();
            while(rs.next()){
                contacto.add(new ContactoDTO(rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4)));
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e);
        } finally {
            cn.cerrarConexion();
        }
        return contacto;
    }
Imagen de ruco

hola mi conexión se realiza y

hola mi conexión se realiza y todo solo que no puedo ejecutar la segunda consulta
aquí mi código ok!!

try {

System.out.println("CONECTANDO...");

Class.forName(driver).newInstance();
System.out.println("CLASE ENCONTRADA!!!");
Connection conn=DriverManager.getConnection(this.url+servidor+puerto+sid,usuario,password);
System.out.println("CONECTADO");

Statement estado =conn.createStatement();
ResultSet result=estado.executeQuery(consulta);
while(result.next()){
System.out.println(result.getString("CLNT_NAME"));
}

//Statement estado2 =conn.createStatement();
ResultSet result2=estado.executeQuery(consulta2);
while(result2.next()){
System.out.println(result.getString("CLNT_type"));
}

Lo que no puedo hacer es la segunda consulta me aparece juego de resultados agotado

Ruco , yo estoy comenzando en

Ruco , yo estoy comenzando en java , cuando yo hago varias consultas update y insert en un solo metodo lo llamo transaccion .
En tu caso me parece que no estas cerrando el primer ResultSet (result.close(); ) , tendria q probar ,pero ahorita estoy en el trabajo y no tengo el netbeans, pero yo usaria un resultset para las dos consultas y no crearia otro ("ResultSet result2") .

Aparte me parece que esta linea estas usando el primer ResultSet que creaste , cuando estas en la segunda consulta

System.out.println(result.getString("CLNT_type"));

Re: hola mi conexión se realiza y

Bueno, yo que tú empezaba por algo; y eso sería dejar de duplicar código y con esto, dejarías de tener el problema de ver a qué estás llamando. Lo que yo haría sería lo siguiente:

void printField(Connection conn, String query, String fieldName){
--Statement statement = conn.createStatement();
--ResultSet resultSet = statement.executeQuery(query);
--while(resultSet.next()){
----System.out.println(resultSet.getString(fieldName));
--}
}

Luego en donde tienes ése código pudieras hacer:

try{
--Class.forName(driver);
--Connection conn = DriverManager.getConnection(this.url+servidor+puerto+sid,usuario,password);
--printField(conn, consulta, "CLNT_NAME");
--printField(conn, consulta, "CLNT_type");
}catch(Exception e){
--System.out.println("Hubo un error");
--e.printStackTrace();
}

Por qué tu error es que en el segundo while estás llamando el método del primer ResultSet, y por tanto te confundes más fácil.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">