SlideShare una empresa de Scribd logo
Ingeniería de Sistemas y Telemática
ResulSet
Marco Aurelio Porro Chulli.
Erlin Darwin Herrera Cieza.
Yosmer Aguilar Cabrera.
V
DEFINICION
Un ResultSet contiene todas las filas que satisfacen las condiciones de una
sentencia SQL y proporciona el acceso a los datos de estas filas mediante un
conjunto de métodos get que permiten el acceso a las diferentes columnas de
las filas. El método ResultSet.next se usa para moverse a la siguiente fila del
result set,convirtiendo a ésta en la fila actúal.
Sintaxis
java.sql.Statement stmt = conn.createStatement();
ResultSet r = stmt.executeQuery("SELECT nombre de los campos
FROM Table1");
while (r.next())
{int i = r.getInt("a");
String s = r.getString("b");
float f = r.getFloat("c");
System.out.println("ROW = " + i + " " + s + " " + f);}
Filas y Cursores
Un ResultSet mantiene un cursor que apunta a la fila
actúal de datos. El cursor se mueve una fila hacia
abajo cada vez que se llama al método next.
Incialmente se sitúa antes de la primera fila, por lo
que hay que llamar al método next para situarlo en la
primera fila conviertiendola en la fila actúal. Las filas
de ResultSet se recuperan en secuencia desde la fila
más alta a la más baja. Un cursor se mantiene válido
hasta que el objeto Resultset o su objeto padre
Statement se cierra.
Columnas
Los métodos getXXX suministran los medios para recuperar los valores de las
columnas de la fila actúal. Dentro de cada fila, los valores de las columnas
puedenrecuperarse en cualquier orden.
Puede usarse o bien el nombre de la columna o el número de columna para
referirse a esta. Por ejemplo: si la columna segunda de un objeto RecordSet rs se
denomina “title” y almacena valores de cadena, cualquiera de los dos ejemplos
siguientes nos devolverá el valor almacenado en la columna.
String s = rs.getString("title");
String s = rs.getString(2);
Nótese que las columnas se numeran de izquierda a derecha comenzando con la
columna 1. Además los nombres usados como input en los métodos getXXX son
insensibles a las mayúsculas.
Tipos de datos y conversiones.
Para los métodos getXXX, el driver JDBC intenta convertir los datos subyacentes a
tipos de datos Java . Por ejemplo, si el método getXXX es getString y los tipos de
datos de la base de datos en la base subyacente es VARCHAR, el driver JDBC
convertirá VARCHAR en String de Java. El valor devuelto por getString será un
objeto Java de tipo String.
Por ejemplo, cualquier método getXXX excepto
getBytes o getBinaryStream puede
usarse para recuperar valores de tipo LONGVARCHAR,
pero se recomienda usar
getAsciiStream o getUnicodeStream, dependiendo de
que tipo de dato se devuelve.
Uso de Streams valores muy grandes de filas
Valores resultado NULL
Para determinar si un valor resultado dado es JDBC NULL, primero debe
intentarse leer la columna y usar el método ResultSet.wasNull para descubrir si el
valor devuelto es JDBC NULL
Un valor null de Java para
aquellos métodos getXXX
que devuelven objetos
Java (tales como getString,
getBigDecimal, getBytes,
getDate,getTime,getTimest
amp,getAsciiStream,
getUnicodeStream,
getBinaryStream,getObjet)
.
Un valor cero para
getByte, getShort,
getInt, getLong,
getFloat y getDouble
Un valor false para
getBoolean.
Soporte de ResultSetMetaData
Cuando se llama al método getMetaData en un objeto ResultSet, el método
devuelve un objeto ResultSetMetaData que describe las columnas de ese
objeto ResultSet. En los casos en que la sentencia SQL que se va a procesar
no se conoce hasta el momento de la ejecución, puede utilizarse
ResultSetMetaData para determinar cuál de los métodos get hay que
emplear para recuperar los datos.
El ejemplo de código siguiente utiliza ResultSetMetaData para determinar
cada uno de los tipos de columna del conjunto de resultados.
ResultSet rs = stmt.executeQuery(sqlString);
ResultSetMetaData rsmd = rs.getMetaData();
int colType [] = new int[rsmd.getColumnCount()];
for (int idx = 0, int col = 1; idx < colType.length; idx++, col++)
colType[idx] = rsmd.getColumnType(col);
Características de ResultSet
Por defecto, el tipo de todos los
ResultSets creados es solo de reenvío, la
concurrencia es solo de lectura y los
cursores se retienen en los límites del
compromiso. Una excepción de ello la
presenta WebSphere, que actualmente
cambia el valor predeterminado de la
capacidad de retención de cursores para
que los cursores se cierren
implícitamente al comprometerse. Estas
características pueden configurarse
mediante los métodos accesibles en
objetos Statement, PreparedStatement y
CallableStatement.
Tipos de ResultSet
TYPE_FORWARD_ONLY
Un cursor que solo
puede utilizarse para
procesar desde el
principio de un
ResultSet hasta el final
del mismo. Este es el
tipo por omisión.
TYPE_SCROLL_INSENSITIVE
Un cursor que se puede
emplear para desplazares a
través de un ResultSet. Este
tipo de cursor es insensible
a los cambios efectuados en
la base de datos mientras
está abierto.
TYPE_SCROLL_SENSITIV
Un cursor que puede
utilizarse para el
desplazamiento en
diversas formas a través
de un ResultSet. Este tipo
de cursor es sensible a los
cambios efectuados en la
base de datos mientras
está abierto.E
Nota: las propiedades de agrupación por bloques habilitada y de
conexión de tamaño de bloque afectan al grado de sensibilidad de
un cursor TYPE_SCROLL_SENSITIVE. La agrupación por bloques
mejora el rendimiento al almacenar en caché datos de la propia
capa del controlador JDBC.
Concurrencia
La concurrencia determina si el ResultSet puede actualizarse. Los tipos se
definen de nuevo mediante constantes de la interfaz ResultSet.
CONCUR_READ_ONLY
Un ResultSet que solo puede
utilizarse para leer datos de la
base de datos. Este es el valor
predeterminado.
CONCUR_UPDATEABLE
Un ResultSet que permite
efectuar cambios en el mismo.
Estos cambios pueden colocarse
en la base de datos subyacente.
Nota: Según la especificación JDBC, el controlador
JDBC puede cambiar el tipo de ResultSet del valor
de concurrencia de ResultSet si los valores no
pueden utilizarse conjuntamente
Capacidad de retención
La característica de capacidad de retención determina si la llamada al
compromiso en el objeto Connection cierra el ResultSet. La API de JDBC
destinada a trabajar con la característica de capacidad de retención es nueva
en la versión 3.0. Sin embargo, el controlador JDBC nativo ha proporcionado
una propiedad de conexión para varios releases que le permite especificar
ese valor predeterminado para todos los ResultSets creados bajo la conexión
HOLD_CURSOR_OVER_COMMIT
Todos los cursores abiertos permanecen así
cuando se llama a la cláusula commit. Este es el
valor predeterminado del controlador JDBC
nativo.
CLOSE_CURSORS_ON_COMMIT
Todos los cursores abiertos se cierran cuando se llama a
la cláusula commit.
Nota: Al llamar a la retrotracción en una conexión, siempre
se cierran todos los cursores abiertos. Este es un hecho
poco conocido, pero es una forma común de que las bases
de datos manejen los cursores.

Más contenido relacionado

La actualidad más candente

ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB
 ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB
ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB
jhsanchez24
 
TRANSACT-SQL
TRANSACT-SQLTRANSACT-SQL
TRANSACT-SQL
karlajanethlopez
 
Programación 3 jk base de datos sql
Programación 3 jk base de datos sqlProgramación 3 jk base de datos sql
Programación 3 jk base de datos sql
Juank Pesántez
 
Lenguaje transact sql
Lenguaje transact sqlLenguaje transact sql
Lenguaje transact sql
INGRID LESLY CORONEL ACUÑA
 
LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.
SILVA19_PAMELA
 
Espacio de nombres system.Data.Oledb
Espacio de nombres system.Data.OledbEspacio de nombres system.Data.Oledb
Espacio de nombres system.Data.Oledb
frank yordi tejada sanchez
 
Guia7 java
Guia7 javaGuia7 java
Guia7 java
odelys2003
 
Resultset
ResultsetResultset
Diapositivas objeto statement
Diapositivas objeto statementDiapositivas objeto statement
Diapositivas objeto statement
Vilma Analí Pardo Suárez
 
Sql dataadapter
Sql dataadapterSql dataadapter
Sql dataadapter
Jairo Quiroz Cabanillas
 
Lenguaje Transact SQL
Lenguaje Transact SQL Lenguaje Transact SQL
Lenguaje Transact SQL
Jorge Paredes Toledo
 
Transac sql
Transac sqlTransac sql
Lenguaje Transact sql
Lenguaje Transact sqlLenguaje Transact sql
Lenguaje Transact sql
Lizbeth Lizana Carrasco
 
Preparedstatement
PreparedstatementPreparedstatement
Preparedstatement
EBER CARRERO MENOR
 
Bd 2 1 fundamentos transact sql
Bd 2   1 fundamentos transact sqlBd 2   1 fundamentos transact sql
Bd 2 1 fundamentos transact sql
Carlos Lopez
 
Fo 5.desarrollo android-almacenamientodedatos
Fo 5.desarrollo android-almacenamientodedatosFo 5.desarrollo android-almacenamientodedatos
Fo 5.desarrollo android-almacenamientodedatos
Nathii Oh
 
Almdedat
AlmdedatAlmdedat
Almdedat
Sujey Morales
 
PreparedStatament
PreparedStatamentPreparedStatament
PreparedStatament
mabel quispe olivera
 
Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6
Jorge Ulises
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
kleyber Goñas Terrones
 

La actualidad más candente (20)

ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB
 ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB
ESPACIO DE NOMBRES SYSTEM.DATA.OLEDB
 
TRANSACT-SQL
TRANSACT-SQLTRANSACT-SQL
TRANSACT-SQL
 
Programación 3 jk base de datos sql
Programación 3 jk base de datos sqlProgramación 3 jk base de datos sql
Programación 3 jk base de datos sql
 
Lenguaje transact sql
Lenguaje transact sqlLenguaje transact sql
Lenguaje transact sql
 
LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.LABORATORIO DE PROGRAMACIÓN I.
LABORATORIO DE PROGRAMACIÓN I.
 
Espacio de nombres system.Data.Oledb
Espacio de nombres system.Data.OledbEspacio de nombres system.Data.Oledb
Espacio de nombres system.Data.Oledb
 
Guia7 java
Guia7 javaGuia7 java
Guia7 java
 
Resultset
ResultsetResultset
Resultset
 
Diapositivas objeto statement
Diapositivas objeto statementDiapositivas objeto statement
Diapositivas objeto statement
 
Sql dataadapter
Sql dataadapterSql dataadapter
Sql dataadapter
 
Lenguaje Transact SQL
Lenguaje Transact SQL Lenguaje Transact SQL
Lenguaje Transact SQL
 
Transac sql
Transac sqlTransac sql
Transac sql
 
Lenguaje Transact sql
Lenguaje Transact sqlLenguaje Transact sql
Lenguaje Transact sql
 
Preparedstatement
PreparedstatementPreparedstatement
Preparedstatement
 
Bd 2 1 fundamentos transact sql
Bd 2   1 fundamentos transact sqlBd 2   1 fundamentos transact sql
Bd 2 1 fundamentos transact sql
 
Fo 5.desarrollo android-almacenamientodedatos
Fo 5.desarrollo android-almacenamientodedatosFo 5.desarrollo android-almacenamientodedatos
Fo 5.desarrollo android-almacenamientodedatos
 
Almdedat
AlmdedatAlmdedat
Almdedat
 
PreparedStatament
PreparedStatamentPreparedStatament
PreparedStatament
 
Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 

Destacado

Hollister Rec
Hollister RecHollister Rec
Hollister Rec
Jenna Schroth
 
Planificación de clase teóric aejercicio
Planificación de clase teóric aejercicioPlanificación de clase teóric aejercicio
Planificación de clase teóric aejercicio
Consuelo Medina Correa, Mg
 
DAYTON corporate presentation
DAYTON corporate presentationDAYTON corporate presentation
DAYTON corporate presentation
Fred Ramberg
 
What has Facebook ever done for Business (Roger Christie - Propel)
What has Facebook ever done for Business (Roger Christie - Propel)What has Facebook ever done for Business (Roger Christie - Propel)
What has Facebook ever done for Business (Roger Christie - Propel)
Roger Christie
 
Prepared statement
Prepared statementPrepared statement
Prepared statement
Erlin Darwin Herrera cieza
 
JDBC
JDBCJDBC
Luis colasante icd school
Luis colasante icd schoolLuis colasante icd school
Luis colasante icd school
Sogefi Group
 
Seo for your WordPress site doesn’t need to be hard
Seo for your WordPress site doesn’t need to be hardSeo for your WordPress site doesn’t need to be hard
Seo for your WordPress site doesn’t need to be hard
Ruan Fourie
 
Statement
StatementStatement
Copius Group brochure
Copius Group brochureCopius Group brochure
Copius Group brochure
Susan Stewart
 
M04 27 Tips and Tricks for a Successful Deployment - Miller Final
M04 27 Tips and Tricks for a Successful Deployment - Miller FinalM04 27 Tips and Tricks for a Successful Deployment - Miller Final
M04 27 Tips and Tricks for a Successful Deployment - Miller Final
Julie Miller
 
Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...
Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...
Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...
Utrecht
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
Erlin Darwin Herrera cieza
 
How to draw a hut or house
How to draw a hut or houseHow to draw a hut or house
How to draw a hut or house
Surajit Pal
 
S4 tarea4 maarz
S4 tarea4 maarzS4 tarea4 maarz
S4 tarea4 maarz
Enio Maldonado
 
Coneccion
ConeccionConeccion
Java de erlin
Java de erlinJava de erlin
Presentación1
Presentación1Presentación1
Snehal Thaker
Snehal ThakerSnehal Thaker
Snehal Thaker
SNEHALKUMAR THAKER
 

Destacado (19)

Hollister Rec
Hollister RecHollister Rec
Hollister Rec
 
Planificación de clase teóric aejercicio
Planificación de clase teóric aejercicioPlanificación de clase teóric aejercicio
Planificación de clase teóric aejercicio
 
DAYTON corporate presentation
DAYTON corporate presentationDAYTON corporate presentation
DAYTON corporate presentation
 
What has Facebook ever done for Business (Roger Christie - Propel)
What has Facebook ever done for Business (Roger Christie - Propel)What has Facebook ever done for Business (Roger Christie - Propel)
What has Facebook ever done for Business (Roger Christie - Propel)
 
Prepared statement
Prepared statementPrepared statement
Prepared statement
 
JDBC
JDBCJDBC
JDBC
 
Luis colasante icd school
Luis colasante icd schoolLuis colasante icd school
Luis colasante icd school
 
Seo for your WordPress site doesn’t need to be hard
Seo for your WordPress site doesn’t need to be hardSeo for your WordPress site doesn’t need to be hard
Seo for your WordPress site doesn’t need to be hard
 
Statement
StatementStatement
Statement
 
Copius Group brochure
Copius Group brochureCopius Group brochure
Copius Group brochure
 
M04 27 Tips and Tricks for a Successful Deployment - Miller Final
M04 27 Tips and Tricks for a Successful Deployment - Miller FinalM04 27 Tips and Tricks for a Successful Deployment - Miller Final
M04 27 Tips and Tricks for a Successful Deployment - Miller Final
 
Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...
Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...
Utrecht/Kenniscongres2016/8/G. Kalfsbeek/Zorginkoop en zorginhoud: gescheiden...
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
How to draw a hut or house
How to draw a hut or houseHow to draw a hut or house
How to draw a hut or house
 
S4 tarea4 maarz
S4 tarea4 maarzS4 tarea4 maarz
S4 tarea4 maarz
 
Coneccion
ConeccionConeccion
Coneccion
 
Java de erlin
Java de erlinJava de erlin
Java de erlin
 
Presentación1
Presentación1Presentación1
Presentación1
 
Snehal Thaker
Snehal ThakerSnehal Thaker
Snehal Thaker
 

Similar a Presentación result set

Resulset
Resulset Resulset
RESULTSET
RESULTSETRESULTSET
Resultset
ResultsetResultset
Resultset
SANDRITA RAFAEL
 
Resultset
ResultsetResultset
Resulset en java
Resulset en javaResulset en java
Resulset en java
kleyber Goñas Terrones
 
Diapositivas de-resulset (1)
Diapositivas de-resulset (1)Diapositivas de-resulset (1)
Diapositivas de-resulset (1)
Patricia Reyna
 
Resultset
ResultsetResultset
ResultSet
ResultSetResultSet
ResultSet
JhiZzelh T Cz
 
ResultSet
ResultSetResultSet
Resulset
ResulsetResulset
Java con Base de Datos
Java con Base de Datos Java con Base de Datos
Java con Base de Datos
kelly yesenia montalvan damian
 
ResultSet
ResultSetResultSet
ResultSet
PierinaCP
 
Tema 9 aplicaciones de dos capas por gio
Tema 9   aplicaciones de dos capas por gioTema 9   aplicaciones de dos capas por gio
Tema 9 aplicaciones de dos capas por gio
Robert Wolf
 
Result set
Result setResult set
Tema 15 aplicaciones de dos capas por gio
Tema 15   aplicaciones de dos capas por gioTema 15   aplicaciones de dos capas por gio
Tema 15 aplicaciones de dos capas por gio
Robert Wolf
 
Prepared statement
Prepared statementPrepared statement
Prepared statement
Lisbeth Ocaña Bueno
 
Connection
ConnectionConnection
Active x data object ado.net
Active x data object ado.netActive x data object ado.net
Active x data object ado.net
Gissela Antohane
 
Tema: Result set
Tema: Result setTema: Result set
Tema: Result set
Jhosy2404
 
System.Data.SqlClient
System.Data.SqlClient System.Data.SqlClient
System.Data.SqlClient
jack grandez garcia
 

Similar a Presentación result set (20)

Resulset
Resulset Resulset
Resulset
 
RESULTSET
RESULTSETRESULTSET
RESULTSET
 
Resultset
ResultsetResultset
Resultset
 
Resultset
ResultsetResultset
Resultset
 
Resulset en java
Resulset en javaResulset en java
Resulset en java
 
Diapositivas de-resulset (1)
Diapositivas de-resulset (1)Diapositivas de-resulset (1)
Diapositivas de-resulset (1)
 
Resultset
ResultsetResultset
Resultset
 
ResultSet
ResultSetResultSet
ResultSet
 
ResultSet
ResultSetResultSet
ResultSet
 
Resulset
ResulsetResulset
Resulset
 
Java con Base de Datos
Java con Base de Datos Java con Base de Datos
Java con Base de Datos
 
ResultSet
ResultSetResultSet
ResultSet
 
Tema 9 aplicaciones de dos capas por gio
Tema 9   aplicaciones de dos capas por gioTema 9   aplicaciones de dos capas por gio
Tema 9 aplicaciones de dos capas por gio
 
Result set
Result setResult set
Result set
 
Tema 15 aplicaciones de dos capas por gio
Tema 15   aplicaciones de dos capas por gioTema 15   aplicaciones de dos capas por gio
Tema 15 aplicaciones de dos capas por gio
 
Prepared statement
Prepared statementPrepared statement
Prepared statement
 
Connection
ConnectionConnection
Connection
 
Active x data object ado.net
Active x data object ado.netActive x data object ado.net
Active x data object ado.net
 
Tema: Result set
Tema: Result setTema: Result set
Tema: Result set
 
System.Data.SqlClient
System.Data.SqlClient System.Data.SqlClient
System.Data.SqlClient
 

Más de Erlin Darwin Herrera cieza

Sistema para un molino Arrocero
Sistema para un molino ArroceroSistema para un molino Arrocero
Sistema para un molino Arrocero
Erlin Darwin Herrera cieza
 
Diapositivas olap
Diapositivas olapDiapositivas olap
Diapositivas olap
Erlin Darwin Herrera cieza
 
Copia de seguridad y restaurar
Copia de seguridad y restaurarCopia de seguridad y restaurar
Copia de seguridad y restaurar
Erlin Darwin Herrera cieza
 
Segruridad en sql server
Segruridad en sql serverSegruridad en sql server
Segruridad en sql server
Erlin Darwin Herrera cieza
 
4 procedimientos-almacenados
4 procedimientos-almacenados4 procedimientos-almacenados
4 procedimientos-almacenados
Erlin Darwin Herrera cieza
 
5 cursores
5 cursores5 cursores
Vistas
VistasVistas
Comandos ddl-trabajo-02-bdii
Comandos ddl-trabajo-02-bdiiComandos ddl-trabajo-02-bdii
Comandos ddl-trabajo-02-bdii
Erlin Darwin Herrera cieza
 
Lenguaje transact-sql
Lenguaje transact-sqlLenguaje transact-sql
Lenguaje transact-sql
Erlin Darwin Herrera cieza
 
Ejecutables en netbeans
Ejecutables en netbeansEjecutables en netbeans
Ejecutables en netbeans
Erlin Darwin Herrera cieza
 
I report
I reportI report
Jdbc
JdbcJdbc
Objeto sqlcomand
Objeto sqlcomandObjeto sqlcomand
Objeto sqlcomand
Erlin Darwin Herrera cieza
 
Objeto connection
Objeto connectionObjeto connection
Objeto connection
Erlin Darwin Herrera cieza
 
Espacio de nombres system.data.sqlclient
Espacio de nombres system.data.sqlclientEspacio de nombres system.data.sqlclient
Espacio de nombres system.data.sqlclient
Erlin Darwin Herrera cieza
 
Ado.net
Ado.netAdo.net
Gestor de-base-de-batos
Gestor de-base-de-batosGestor de-base-de-batos
Gestor de-base-de-batos
Erlin Darwin Herrera cieza
 
Poo
PooPoo
Programacion capas
Programacion capasProgramacion capas
Programacion capas
Erlin Darwin Herrera cieza
 

Más de Erlin Darwin Herrera cieza (19)

Sistema para un molino Arrocero
Sistema para un molino ArroceroSistema para un molino Arrocero
Sistema para un molino Arrocero
 
Diapositivas olap
Diapositivas olapDiapositivas olap
Diapositivas olap
 
Copia de seguridad y restaurar
Copia de seguridad y restaurarCopia de seguridad y restaurar
Copia de seguridad y restaurar
 
Segruridad en sql server
Segruridad en sql serverSegruridad en sql server
Segruridad en sql server
 
4 procedimientos-almacenados
4 procedimientos-almacenados4 procedimientos-almacenados
4 procedimientos-almacenados
 
5 cursores
5 cursores5 cursores
5 cursores
 
Vistas
VistasVistas
Vistas
 
Comandos ddl-trabajo-02-bdii
Comandos ddl-trabajo-02-bdiiComandos ddl-trabajo-02-bdii
Comandos ddl-trabajo-02-bdii
 
Lenguaje transact-sql
Lenguaje transact-sqlLenguaje transact-sql
Lenguaje transact-sql
 
Ejecutables en netbeans
Ejecutables en netbeansEjecutables en netbeans
Ejecutables en netbeans
 
I report
I reportI report
I report
 
Jdbc
JdbcJdbc
Jdbc
 
Objeto sqlcomand
Objeto sqlcomandObjeto sqlcomand
Objeto sqlcomand
 
Objeto connection
Objeto connectionObjeto connection
Objeto connection
 
Espacio de nombres system.data.sqlclient
Espacio de nombres system.data.sqlclientEspacio de nombres system.data.sqlclient
Espacio de nombres system.data.sqlclient
 
Ado.net
Ado.netAdo.net
Ado.net
 
Gestor de-base-de-batos
Gestor de-base-de-batosGestor de-base-de-batos
Gestor de-base-de-batos
 
Poo
PooPoo
Poo
 
Programacion capas
Programacion capasProgramacion capas
Programacion capas
 

Último

Retroalimentación - Aspectos operativos - 25-06.pptx
Retroalimentación - Aspectos operativos - 25-06.pptxRetroalimentación - Aspectos operativos - 25-06.pptx
Retroalimentación - Aspectos operativos - 25-06.pptx
EdSpinoza1
 
PRESENTACION PROY REGIONAL PRONATEL (1).pptx
PRESENTACION PROY REGIONAL PRONATEL (1).pptxPRESENTACION PROY REGIONAL PRONATEL (1).pptx
PRESENTACION PROY REGIONAL PRONATEL (1).pptx
deborah13ya
 
ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...
ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...
ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...
Walter Bardales
 
Apicultura (crianza de avejas en VRAEM.))
Apicultura (crianza de avejas en VRAEM.))Apicultura (crianza de avejas en VRAEM.))
Apicultura (crianza de avejas en VRAEM.))
ssuser79795c1
 
Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...
Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...
Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...
%$A19%
 
TRANSMISIONES MECANICAS AUTOMOVIL PRESENTACION
TRANSMISIONES MECANICAS AUTOMOVIL PRESENTACIONTRANSMISIONES MECANICAS AUTOMOVIL PRESENTACION
TRANSMISIONES MECANICAS AUTOMOVIL PRESENTACION
GABRIEL RUIZ
 
METRADOS EN OBRAS DE PAVIMENTACION-1.pdf
METRADOS EN OBRAS DE PAVIMENTACION-1.pdfMETRADOS EN OBRAS DE PAVIMENTACION-1.pdf
METRADOS EN OBRAS DE PAVIMENTACION-1.pdf
victor297398
 
El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...
El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...
El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...
fannyluzcalizayallat
 
chapa metalica en el dibujo en ingenieria
chapa metalica en el dibujo en ingenieriachapa metalica en el dibujo en ingenieria
chapa metalica en el dibujo en ingenieria
juandiegoalvarodrigu
 
Arquitecto Colbún - El Quillay - La Guardia
Arquitecto Colbún - El Quillay - La GuardiaArquitecto Colbún - El Quillay - La Guardia
Arquitecto Colbún - El Quillay - La Guardia
Arquitecto Chile
 
INTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptx
INTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptxINTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptx
INTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptx
NahuelBeltran
 
Indicadores de mantenimiento, guia para la construccion de indicadores basico...
Indicadores de mantenimiento, guia para la construccion de indicadores basico...Indicadores de mantenimiento, guia para la construccion de indicadores basico...
Indicadores de mantenimiento, guia para la construccion de indicadores basico...
ZeirFernandoMorales
 
Portafolio-Inmel-2022 (1).pdf de telecomunicaciones y redes
Portafolio-Inmel-2022 (1).pdf de telecomunicaciones y redesPortafolio-Inmel-2022 (1).pdf de telecomunicaciones y redes
Portafolio-Inmel-2022 (1).pdf de telecomunicaciones y redes
merqueagroacopio
 
DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...
DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...
DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...
AlissonSalao
 
Incidentes Ambientales en actividades de empresas
Incidentes Ambientales en actividades de empresasIncidentes Ambientales en actividades de empresas
Incidentes Ambientales en actividades de empresas
NestorHugo2
 
EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...
EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...
EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...
GABRIELISAACCHIRITOC
 
EQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOS
EQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOSEQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOS
EQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOS
pabastidas3
 
Las emociones en los centros de trabajo.pdf
Las emociones en los centros de trabajo.pdfLas emociones en los centros de trabajo.pdf
Las emociones en los centros de trabajo.pdf
Jose Manuel de la Cruz Castro
 
listado de precios unitarios de cegin.pdf
listado de precios unitarios de cegin.pdflistado de precios unitarios de cegin.pdf
listado de precios unitarios de cegin.pdf
luisespinocarrera1
 
GUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdf
GUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdfGUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdf
GUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdf
Hector Gallardo
 

Último (20)

Retroalimentación - Aspectos operativos - 25-06.pptx
Retroalimentación - Aspectos operativos - 25-06.pptxRetroalimentación - Aspectos operativos - 25-06.pptx
Retroalimentación - Aspectos operativos - 25-06.pptx
 
PRESENTACION PROY REGIONAL PRONATEL (1).pptx
PRESENTACION PROY REGIONAL PRONATEL (1).pptxPRESENTACION PROY REGIONAL PRONATEL (1).pptx
PRESENTACION PROY REGIONAL PRONATEL (1).pptx
 
ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...
ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...
ES 3.02 Estudio De Factibilidad Para El Desarrollo De 6 Minicentrales Hidroel...
 
Apicultura (crianza de avejas en VRAEM.))
Apicultura (crianza de avejas en VRAEM.))Apicultura (crianza de avejas en VRAEM.))
Apicultura (crianza de avejas en VRAEM.))
 
Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...
Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...
Best Girls Call Aero City 9873940964 Provide Best And Top Girl Service And No...
 
TRANSMISIONES MECANICAS AUTOMOVIL PRESENTACION
TRANSMISIONES MECANICAS AUTOMOVIL PRESENTACIONTRANSMISIONES MECANICAS AUTOMOVIL PRESENTACION
TRANSMISIONES MECANICAS AUTOMOVIL PRESENTACION
 
METRADOS EN OBRAS DE PAVIMENTACION-1.pdf
METRADOS EN OBRAS DE PAVIMENTACION-1.pdfMETRADOS EN OBRAS DE PAVIMENTACION-1.pdf
METRADOS EN OBRAS DE PAVIMENTACION-1.pdf
 
El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...
El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...
El Antiguo Egipto es una de las civilizaciones más fascinantes y duraderas de...
 
chapa metalica en el dibujo en ingenieria
chapa metalica en el dibujo en ingenieriachapa metalica en el dibujo en ingenieria
chapa metalica en el dibujo en ingenieria
 
Arquitecto Colbún - El Quillay - La Guardia
Arquitecto Colbún - El Quillay - La GuardiaArquitecto Colbún - El Quillay - La Guardia
Arquitecto Colbún - El Quillay - La Guardia
 
INTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptx
INTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptxINTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptx
INTRODUCCIÓN A LOS SISTEMAS DE COMUNICACIONES 2023 continuación.pptx
 
Indicadores de mantenimiento, guia para la construccion de indicadores basico...
Indicadores de mantenimiento, guia para la construccion de indicadores basico...Indicadores de mantenimiento, guia para la construccion de indicadores basico...
Indicadores de mantenimiento, guia para la construccion de indicadores basico...
 
Portafolio-Inmel-2022 (1).pdf de telecomunicaciones y redes
Portafolio-Inmel-2022 (1).pdf de telecomunicaciones y redesPortafolio-Inmel-2022 (1).pdf de telecomunicaciones y redes
Portafolio-Inmel-2022 (1).pdf de telecomunicaciones y redes
 
DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...
DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...
DISEÑO DE INSTALACIONES PARA PORCINOS, CUYES Y CONEJOS; MÉTODOS DE IDENTIFICA...
 
Incidentes Ambientales en actividades de empresas
Incidentes Ambientales en actividades de empresasIncidentes Ambientales en actividades de empresas
Incidentes Ambientales en actividades de empresas
 
EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...
EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...
EJEMPLO DIAPOSITIVAS ANALISIS DE PROBLEMAS QUE ENFRENTAN LAS ORGANIZACIONES E...
 
EQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOS
EQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOSEQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOS
EQUIPO 7 - EDT TORRE EIFFEL CON EL EDT DE PROYECTOS
 
Las emociones en los centros de trabajo.pdf
Las emociones en los centros de trabajo.pdfLas emociones en los centros de trabajo.pdf
Las emociones en los centros de trabajo.pdf
 
listado de precios unitarios de cegin.pdf
listado de precios unitarios de cegin.pdflistado de precios unitarios de cegin.pdf
listado de precios unitarios de cegin.pdf
 
GUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdf
GUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdfGUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdf
GUÍA BÁSICA DE LA NORMATIVA ELÉCTRICA.pdf
 

Presentación result set

  • 1. Ingeniería de Sistemas y Telemática ResulSet Marco Aurelio Porro Chulli. Erlin Darwin Herrera Cieza. Yosmer Aguilar Cabrera. V
  • 2. DEFINICION Un ResultSet contiene todas las filas que satisfacen las condiciones de una sentencia SQL y proporciona el acceso a los datos de estas filas mediante un conjunto de métodos get que permiten el acceso a las diferentes columnas de las filas. El método ResultSet.next se usa para moverse a la siguiente fila del result set,convirtiendo a ésta en la fila actúal. Sintaxis java.sql.Statement stmt = conn.createStatement(); ResultSet r = stmt.executeQuery("SELECT nombre de los campos FROM Table1"); while (r.next()) {int i = r.getInt("a"); String s = r.getString("b"); float f = r.getFloat("c"); System.out.println("ROW = " + i + " " + s + " " + f);}
  • 3. Filas y Cursores Un ResultSet mantiene un cursor que apunta a la fila actúal de datos. El cursor se mueve una fila hacia abajo cada vez que se llama al método next. Incialmente se sitúa antes de la primera fila, por lo que hay que llamar al método next para situarlo en la primera fila conviertiendola en la fila actúal. Las filas de ResultSet se recuperan en secuencia desde la fila más alta a la más baja. Un cursor se mantiene válido hasta que el objeto Resultset o su objeto padre Statement se cierra.
  • 4. Columnas Los métodos getXXX suministran los medios para recuperar los valores de las columnas de la fila actúal. Dentro de cada fila, los valores de las columnas puedenrecuperarse en cualquier orden. Puede usarse o bien el nombre de la columna o el número de columna para referirse a esta. Por ejemplo: si la columna segunda de un objeto RecordSet rs se denomina “title” y almacena valores de cadena, cualquiera de los dos ejemplos siguientes nos devolverá el valor almacenado en la columna. String s = rs.getString("title"); String s = rs.getString(2); Nótese que las columnas se numeran de izquierda a derecha comenzando con la columna 1. Además los nombres usados como input en los métodos getXXX son insensibles a las mayúsculas.
  • 5. Tipos de datos y conversiones. Para los métodos getXXX, el driver JDBC intenta convertir los datos subyacentes a tipos de datos Java . Por ejemplo, si el método getXXX es getString y los tipos de datos de la base de datos en la base subyacente es VARCHAR, el driver JDBC convertirá VARCHAR en String de Java. El valor devuelto por getString será un objeto Java de tipo String. Por ejemplo, cualquier método getXXX excepto getBytes o getBinaryStream puede usarse para recuperar valores de tipo LONGVARCHAR, pero se recomienda usar getAsciiStream o getUnicodeStream, dependiendo de que tipo de dato se devuelve.
  • 6. Uso de Streams valores muy grandes de filas
  • 7. Valores resultado NULL Para determinar si un valor resultado dado es JDBC NULL, primero debe intentarse leer la columna y usar el método ResultSet.wasNull para descubrir si el valor devuelto es JDBC NULL Un valor null de Java para aquellos métodos getXXX que devuelven objetos Java (tales como getString, getBigDecimal, getBytes, getDate,getTime,getTimest amp,getAsciiStream, getUnicodeStream, getBinaryStream,getObjet) . Un valor cero para getByte, getShort, getInt, getLong, getFloat y getDouble Un valor false para getBoolean.
  • 8. Soporte de ResultSetMetaData Cuando se llama al método getMetaData en un objeto ResultSet, el método devuelve un objeto ResultSetMetaData que describe las columnas de ese objeto ResultSet. En los casos en que la sentencia SQL que se va a procesar no se conoce hasta el momento de la ejecución, puede utilizarse ResultSetMetaData para determinar cuál de los métodos get hay que emplear para recuperar los datos. El ejemplo de código siguiente utiliza ResultSetMetaData para determinar cada uno de los tipos de columna del conjunto de resultados. ResultSet rs = stmt.executeQuery(sqlString); ResultSetMetaData rsmd = rs.getMetaData(); int colType [] = new int[rsmd.getColumnCount()]; for (int idx = 0, int col = 1; idx < colType.length; idx++, col++) colType[idx] = rsmd.getColumnType(col);
  • 9. Características de ResultSet Por defecto, el tipo de todos los ResultSets creados es solo de reenvío, la concurrencia es solo de lectura y los cursores se retienen en los límites del compromiso. Una excepción de ello la presenta WebSphere, que actualmente cambia el valor predeterminado de la capacidad de retención de cursores para que los cursores se cierren implícitamente al comprometerse. Estas características pueden configurarse mediante los métodos accesibles en objetos Statement, PreparedStatement y CallableStatement.
  • 10. Tipos de ResultSet TYPE_FORWARD_ONLY Un cursor que solo puede utilizarse para procesar desde el principio de un ResultSet hasta el final del mismo. Este es el tipo por omisión. TYPE_SCROLL_INSENSITIVE Un cursor que se puede emplear para desplazares a través de un ResultSet. Este tipo de cursor es insensible a los cambios efectuados en la base de datos mientras está abierto. TYPE_SCROLL_SENSITIV Un cursor que puede utilizarse para el desplazamiento en diversas formas a través de un ResultSet. Este tipo de cursor es sensible a los cambios efectuados en la base de datos mientras está abierto.E Nota: las propiedades de agrupación por bloques habilitada y de conexión de tamaño de bloque afectan al grado de sensibilidad de un cursor TYPE_SCROLL_SENSITIVE. La agrupación por bloques mejora el rendimiento al almacenar en caché datos de la propia capa del controlador JDBC.
  • 11. Concurrencia La concurrencia determina si el ResultSet puede actualizarse. Los tipos se definen de nuevo mediante constantes de la interfaz ResultSet. CONCUR_READ_ONLY Un ResultSet que solo puede utilizarse para leer datos de la base de datos. Este es el valor predeterminado. CONCUR_UPDATEABLE Un ResultSet que permite efectuar cambios en el mismo. Estos cambios pueden colocarse en la base de datos subyacente. Nota: Según la especificación JDBC, el controlador JDBC puede cambiar el tipo de ResultSet del valor de concurrencia de ResultSet si los valores no pueden utilizarse conjuntamente
  • 12. Capacidad de retención La característica de capacidad de retención determina si la llamada al compromiso en el objeto Connection cierra el ResultSet. La API de JDBC destinada a trabajar con la característica de capacidad de retención es nueva en la versión 3.0. Sin embargo, el controlador JDBC nativo ha proporcionado una propiedad de conexión para varios releases que le permite especificar ese valor predeterminado para todos los ResultSets creados bajo la conexión HOLD_CURSOR_OVER_COMMIT Todos los cursores abiertos permanecen así cuando se llama a la cláusula commit. Este es el valor predeterminado del controlador JDBC nativo. CLOSE_CURSORS_ON_COMMIT Todos los cursores abiertos se cierran cuando se llama a la cláusula commit. Nota: Al llamar a la retrotracción en una conexión, siempre se cierran todos los cursores abiertos. Este es un hecho poco conocido, pero es una forma común de que las bases de datos manejen los cursores.