Resultset
-
Upload
jesus-alberto-velasquez-abanto -
Category
Education
-
view
14 -
download
1
Transcript of Resultset
RESULTSET
RESULTSET
Esta interfaz representa un conjunto de datos que son el resultado de una consulta SQL. La clase posee una serie de métodos XXX getXXX(int columna) y XXX getXXX(String columna) que permiten acceder a los resultados de la consulta (para la sintaxis correcta de estos métodos acudir al javadoc de la interfaz ResultSet).
Método Descripciónprevious() next() first() last()
Envía el puntero a la fila anterior del objeto ResultSet. (Devuelve true si encuentra la fila anterior). Envía el puntero a la fila siguiente del objeto ResultSet. (Devuelve true si encuentra la fila siguiente). Envía el puntero a la primera fila del objeto ResultSet. (Devuelve true si se encuentra primera fila). Envía el puntero a la última fila del objeto ResultSet. (Devuelvetrue si se encuentra última fila).
isFirst()
Devuelve verdadero, si el puntero se encuentra en la primera fila.
getString() getInt() getDate() getBoolean() getDouble() getLong()
Captura un dato de tipo String del esquema de datos. Captura un dato de tipo int del esquema de datos. Captura un dato de tipo Date del esquema de datos. Captura un dato de tipo boolean del esquema de datos. Captura un dato de tipo double del esquema de datos. Captura un dato de tipo long del esquema de datos.
PROPIEDADES
EJEMPLOSEjemplo 2package ConexionMysql;import java.sql.*;public class Conexion {public Conexion() {}public static void main(String[] args) {Statement stmt=null; // Declara el Objeto StatementConnection cn=null; // Declara el Objeto ConnectionResultSet rs=null; // Declara el Objeto ResultSetString usuario="root";String password="telesup";String host="localhost";String puerto="3306";String basededatos="Comercial";String driver="com.mysql.jdbc.Driver";String urljdbc = "jdbc:mysql://" + host + ":" + puerto + "/" + basededatos;
Ejemplo 1, si la “query” es: SELECT a, b, c FROM Table1, el resultado tendrá una forma semejante a: a b c-------- --------- --------12345 Cupertino CA83472 Redmond WA83492 Boston MA
try {Class.forName(driver).newInstance();cn=DriverManager.getConnection(urljdbc,usuario,password);stmt=cn.createStatement(); // Se crea el comandors=stmt.executeQuery("select * from Clientes");while(rs.next()) // método avance al siguiente y devuelve true{System.out.print(rs.getString("Codcli")+"\t");System.out.print(rs.getString("Apecli")+"\t");System.out.print(rs.getString("Nomcli")+"\t");System.out.print(rs.getString("Dircli")+"\t");System.out.println("");
}rs.close();cn.close();}catch(Exception e) {System.out.println("Error el proceso acceso a la base de datos");System.out.println(e.getMessage());} }}
MÉTODO NEXT
El método next mueve al puntero o cursor a la siguiente fila y hace que esa fila (llamada fila actual) sea con la que podamos operar. Como el cursor inicialmente se posiciona justo encima de la primera fila de un objeto ResultSet, primero debemos llamar al método next para mover el cursor a la primera fila y convertirla en al fila actual. Sucesivas invocaciones del método next moverán el cursor de línea en línea hacia adelante. Existen otros métodos con los cuales podemos mover el puntero de la tabla o consultar sobre la posición actual del puntero (En la tabla anterior, aparece la lista de métodos que mueven el puntero de la tabla).
CONSEGUIR LOS DATOS DEL RESULTSET
Método getXXX(XXX representa al tipo de dato, ejemplo: getDouble(), getString(), getLong(), etc).
Los métodos getXXX del tipo apropiado se utilizan para recuperar el valor de cadacolumna. Por ejemplo:
rs.getString(1); //Recupera el dato de la primera columna de la fila actual.rs.getString(“CODCLI”); //Recupera el dato de la campo “CODCLI” de la fila actual.
Nota: La primera columna del ResultSet corresponde al número 1Podemos referirnos a un dato del ResultSet mediante su número o nombre de columna.Para conseguir otros tipos de datos contamos con los siguientes métodos:
getBytegetShortgetIntgetLonggetFloatgetDoublegetBigDecimalgetBooleangetStringgetBytesgetDategetTime
El ResultSet generado tiene la
siguiente estructura:
GRACIAS