Foros del Web » Programación para mayores de 30 ;) » Java »

Acceso a un Resultset

Estas en el tema de Acceso a un Resultset en el foro de Java en Foros del Web. Buenos días: Estoy creando una clase GUI en la que al pulsar un botón, creo un Resultset a partir de una base de datos. Funciona ...
  #1 (permalink)  
Antiguo 09/09/2014, 02:11
 
Fecha de Ingreso: noviembre-2013
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Acceso a un Resultset

Buenos días:
Estoy creando una clase GUI en la que al pulsar un botón, creo un Resultset a partir de una base de datos. Funciona perfectamente.
El problema es que cuando intento acceder a este mismo Resultset desde otro método de la clase, no encuentra el objeto Resultset instanciado anteriormente.
El Resultset lo he declarado así:

String consulta = "SELECT * FROM tbl_opera";
Statement st = con.createStatement();
ResultSet csr_opera = st.executeQuery(consulta);

Como he dicho, en cualquier otro método no reconoce el objeto "csr_opera"
¿Qué falta para poder acceder a este objeto?
  #2 (permalink)  
Antiguo 09/09/2014, 03:12
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: Acceso a un Resultset

Hola:

Si lo has hecho como dices,

Código Java:
Ver original
  1. String consulta = "SELECT * FROM tbl_opera";
  2. Statement st = con.createStatement();
  3. ResultSet csr_opera = st.executeQuery(consulta);

csr_opera está declarado como variable local en tu método, así que sólo podrás verlo dentro de ese método y a partir del punto en el que ha sido declarado.

Para poder verlo en otros métodos dentro de la misma clase, tendrías que declararlo como atributo de la clase

Código Java:
Ver original
  1. public class UnaClase {
  2.     private ResultSet crs_opera;
  3.  
  4.     public void unMetodo() {
  5.           ...
  6.          String consulta = "SELECT * FROM tbl_opera";
  7.          Statement st = con.createStatement();
  8.          csr_opera = st.executeQuery(consulta);  // Hemos quitado aquí la declaracion
  9.    }
  10.  
  11.    public void otroMetodo()  {  
  12.            // Aqui se puede usar csr_opera
  13.    }
  14. }

Si quieres verlo en otras clases, tendrás que poner métodos en las otras clases para que le pasen como parámetro este ResultSet y llamarlos desde algún sitio en que tengas accesible esa clase.

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Etiquetas: clase, resultset, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:47.