SlideShare une entreprise Scribd logo
1  sur  16
AREA : BASE DE DATOS II
DOCENTE : ING. MARCO AURELIO PORRO CHULLI
CARRERA : INGENIERÍA DE SISTEMAS Y TELEMÁTICA
INTEGRANTES:
CRISTHIAN SERGIO KAYAP YAGKIKAT
INGRID LESLY CORONEL ACUÑA
CURSORES
Un cursor es un objeto de la Base de Datos usado por
las aplicaciones para manipular los datos fila a fila en
lugar de hacerlo en bloques de filas como lo hacen los
comandos SQL normales
SYSTAXIS
Declaracion del cursor
DECLARE <nombre_cursor> CURSOR
FOR
<sentencia_sql>
Apertura del cursor
OPEN <nombre_cursor>
//Lectura de la primera fila del cursor
FETCH <nombre_cursor> INTO
<lista_variables>
WHILE (@@FETCH_STATUS = 0)
BEGIN
// Lectura de la siguiente fila de un cursor FETCH
<nombre_cursor> INTO
<lista_variables>
END Fin del bucle WHILE
Cierra el cursor
CLOSE <nombre_cursor>
//Libera los recursos del cursor
DEALLOCATE <nombre_cursor>
ADMINISTRACION DE CURSORES
(CREACION, MODIFICACION,
ELIMINACION
Creacion:
CREAR UN CURSOR QUE OBTENGA LOS DATOS DE LOS PRODUCTOS
DECLARE @col1 VARCHAR(80),
DECLARE@col2 INT,
DECLARE@col3 NUMERIC(10,2)
--CREACION DEL CURSOR
DECLARE c_Producto_Basico CURSOR FOR
SELECT Descripcion, Stock, PrecioA
FROM Producto
-ABRIR CURSOR
OPEN c_Producto_Basico
--MANIPULAR DATOS-----
FETCH(LEER) FETCH c_Producto_Basico INTO @col1,@col2,@col3
WHILE @@FETCH_STATUS=0
BEGIN ---LTRIM(ELIMINA ESPACIOS EN BLANCO A LA IZQUIERDA)
PRINT @col1+'-'+LTRIM(str(@col2))+'- '+LTRIM(STR(@col3))
FETCH c_Producto_Basico INTO
@col1,@col2,@col3
END
-CERRAR CURSOR
CLOSE c_Producto_Basico
--DESALOJAR
DEALLOCATE c_Producto_Basico
MODIFICACION
ELIMINACION:
CREATE Procedure DBPSRemoveTest_Sp
As
Begin
DECLARE TEST_CURSOR
CURSOR FOR
SELECT * FROM Test DECLARE @RetPeriod
intDECLARE @AuthId Varchar(50)
OPEN TEST_CURSOR FETCH NEXT FROM TEST_CURSOR INTO
@RETPERIOD,@AUTHID
WHILE@@FETCH_STATUS=0
BEGIN
delete from test where userid=@RetPeriod and
Username=@Authid
IF(@@ROWCOUNT=0)
PRINT 'Failed to delete the row from the table END
FETCH NEXT FROM TEST_CURSOR INTO @RETPERIOD,@AUTHID END
CLOSE TEST_CURSOR DEALLOCATE TEST_CURSOR end GO
EJEMPLOS
El siguiente ejemplo muestra el uso de un cursor.
--Declaracion de variables para el cursor
DECLARE
@Id int,
@Nombre varchar(255),
@Apellido1 varchar(255),
@Apellido2 varchar(255),
@NifCif varchar(20),
@FxNacimiento datetime
DECLARE cClientes CURSOR FOR
SELECT Id, Nombre, Apellido1, Apellido2, NifCif,
FxNacimiento
FROM CLIENTES
--Apertura del cursor
OPEN cClientes
--Lectura de la primera fila del cursor
FETCH cClientes INTO @id, @Nombre, @Apellido1,
@Apellido2, @NifCif, @FxNacimiento
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT @Nombre + ' ' + @Apellido1 + ' ' + @Apellido2
--Lectura de la siguiente fila del cursor
FETCH cClientes INTO@id, @Nombre,
@Apellido1, @Apellido2, @NifCif, @FxNacimiento
END
--Cierre del cursor
CLOSE cClientes
--Liberar los recursos
DEALLOCATE cClientes
CURSORES

Contenu connexe

Tendances

Seleccion de datos
Seleccion de datosSeleccion de datos
Seleccion de datos
Omar Salazar
 
Inserción de datos y selección de datos
Inserción de datos y selección de datosInserción de datos y selección de datos
Inserción de datos y selección de datos
carmen305
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
Bolivar Castillo
 
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
Nathaly Arias
 

Tendances (20)

Vistas
VistasVistas
Vistas
 
HTML5 API WebSQL Database: Funciones de agregado
HTML5 API WebSQL Database: Funciones de agregadoHTML5 API WebSQL Database: Funciones de agregado
HTML5 API WebSQL Database: Funciones de agregado
 
Objetos de Esquema de Oracle Database Z052-09
Objetos de Esquema de Oracle Database Z052-09Objetos de Esquema de Oracle Database Z052-09
Objetos de Esquema de Oracle Database Z052-09
 
Sql
SqlSql
Sql
 
Seleccion de datos
Seleccion de datosSeleccion de datos
Seleccion de datos
 
Inserción de datos y selección de datos
Inserción de datos y selección de datosInserción de datos y selección de datos
Inserción de datos y selección de datos
 
Introduccion al sql query
Introduccion al sql queryIntroduccion al sql query
Introduccion al sql query
 
Comandos ddl
Comandos ddlComandos ddl
Comandos ddl
 
Comando ddl
Comando ddlComando ddl
Comando ddl
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
Cursores
CursoresCursores
Cursores
 
Consultas Basicas En Sql Server 2005
Consultas Basicas En Sql Server 2005Consultas Basicas En Sql Server 2005
Consultas Basicas En Sql Server 2005
 
Introduccion a SQL
Introduccion a SQL Introduccion a SQL
Introduccion a SQL
 
Introducción a Sql
Introducción a SqlIntroducción a Sql
Introducción a Sql
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Practicassql
PracticassqlPracticassql
Practicassql
 
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
 
Vista
VistaVista
Vista
 
Ejemplo ddl dml
Ejemplo ddl dmlEjemplo ddl dml
Ejemplo ddl dml
 
Objetop
ObjetopObjetop
Objetop
 

Similaire à CURSORES

BD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQLBD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQL
demoiselle
 
Precentacion de sql visual
Precentacion de sql visualPrecentacion de sql visual
Precentacion de sql visual
BryanChacon12
 
Afinamientodebasesdedatosyservidoreswebs
AfinamientodebasesdedatosyservidoreswebsAfinamientodebasesdedatosyservidoreswebs
Afinamientodebasesdedatosyservidoreswebs
ricardosusa5
 
7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server
Corfapo
 
Manualitosqlserver
ManualitosqlserverManualitosqlserver
Manualitosqlserver
Oca srl
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
Adriana Escobar
 

Similaire à CURSORES (20)

Sesion05 - Manipulacion de datos (Oracle)
Sesion05 - Manipulacion de datos (Oracle)Sesion05 - Manipulacion de datos (Oracle)
Sesion05 - Manipulacion de datos (Oracle)
 
BD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQLBD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQL
 
Textos sqli_mssql
 Textos sqli_mssql Textos sqli_mssql
Textos sqli_mssql
 
Consultas
ConsultasConsultas
Consultas
 
Precentacion de sql visual
Precentacion de sql visualPrecentacion de sql visual
Precentacion de sql visual
 
Portafolio 1 sql
Portafolio 1 sqlPortafolio 1 sql
Portafolio 1 sql
 
Lumisaca hector bdii_t7
Lumisaca hector bdii_t7Lumisaca hector bdii_t7
Lumisaca hector bdii_t7
 
Afinamientodebasesdedatosyservidoreswebs
AfinamientodebasesdedatosyservidoreswebsAfinamientodebasesdedatosyservidoreswebs
Afinamientodebasesdedatosyservidoreswebs
 
Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)
 
Cursores
CursoresCursores
Cursores
 
SESION-07.pptx
SESION-07.pptxSESION-07.pptx
SESION-07.pptx
 
Sesion06c - Sentencias SQL en PL-SQL (Oracle)
Sesion06c - Sentencias SQL en PL-SQL (Oracle)Sesion06c - Sentencias SQL en PL-SQL (Oracle)
Sesion06c - Sentencias SQL en PL-SQL (Oracle)
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server7090112 Clase Transact Sql Server
7090112 Clase Transact Sql Server
 
Manualitosqlserver
ManualitosqlserverManualitosqlserver
Manualitosqlserver
 
Sql 2010
Sql 2010Sql 2010
Sql 2010
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
SQL.docx
SQL.docxSQL.docx
SQL.docx
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
Oracle pl sql
Oracle pl sqlOracle pl sql
Oracle pl sql
 

Plus de INGRID LESLY CORONEL ACUÑA

Plus de INGRID LESLY CORONEL ACUÑA (20)

INTELIGENCIA EMPRESARIAL
INTELIGENCIA EMPRESARIALINTELIGENCIA EMPRESARIAL
INTELIGENCIA EMPRESARIAL
 
Transacciones
TransaccionesTransacciones
Transacciones
 
ADMINISTRACIÓN DE LA SEGURIDAD EN SQL SERVER
ADMINISTRACIÓN DE LA SEGURIDAD EN SQL SERVERADMINISTRACIÓN DE LA SEGURIDAD EN SQL SERVER
ADMINISTRACIÓN DE LA SEGURIDAD EN SQL SERVER
 
TRIGGERS-ACTIVADORES
TRIGGERS-ACTIVADORESTRIGGERS-ACTIVADORES
TRIGGERS-ACTIVADORES
 
TRIGGER-ACTIVADORES
TRIGGER-ACTIVADORESTRIGGER-ACTIVADORES
TRIGGER-ACTIVADORES
 
CURSORES
CURSORESCURSORES
CURSORES
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
 
COMANDOS DDL
COMANDOS DDLCOMANDOS DDL
COMANDOS DDL
 
Lenguaje transact sql
Lenguaje transact sqlLenguaje transact sql
Lenguaje transact sql
 
Reportes
ReportesReportes
Reportes
 
JDBC
JDBCJDBC
JDBC
 
Objeto connection
Objeto connectionObjeto connection
Objeto connection
 
ADO.NET
ADO.NETADO.NET
ADO.NET
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
IREPORT
IREPORTIREPORT
IREPORT
 
CONTROL JTABLE CON BASE DE DATOS
CONTROL JTABLE CON BASE DE DATOSCONTROL JTABLE CON BASE DE DATOS
CONTROL JTABLE CON BASE DE DATOS
 
Resulteset
ResultesetResulteset
Resulteset
 
Statement
StatementStatement
Statement
 
Connection trabajo
Connection trabajoConnection trabajo
Connection trabajo
 
JAVA CON BASE DE DATOS
JAVA CON BASE DE DATOSJAVA CON BASE DE DATOS
JAVA CON BASE DE DATOS
 

Dernier

3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
GustavoAdolfoDiaz3
 
Tipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplosTipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplos
andersonsubero28
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
evercoyla
 
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
samuelsan933
 

Dernier (20)

“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
 
1. Equipos Primarios de una Subestaciones electricas
1. Equipos Primarios de una Subestaciones electricas1. Equipos Primarios de una Subestaciones electricas
1. Equipos Primarios de una Subestaciones electricas
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
Matrices Matemáticos universitario pptx
Matrices  Matemáticos universitario pptxMatrices  Matemáticos universitario pptx
Matrices Matemáticos universitario pptx
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo Limache
 
Tipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplosTipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplos
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
Análisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOAnálisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECO
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
 
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
S3-OXIDOS-HIDROXIDOS-CARBONATOS (mineralogia)
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
docsity-manzaneo-y-lotizacion para habilitacopm urbana
docsity-manzaneo-y-lotizacion para habilitacopm urbanadocsity-manzaneo-y-lotizacion para habilitacopm urbana
docsity-manzaneo-y-lotizacion para habilitacopm urbana
 
3er Informe Laboratorio Quimica General (2) (1).pdf
3er Informe Laboratorio Quimica General  (2) (1).pdf3er Informe Laboratorio Quimica General  (2) (1).pdf
3er Informe Laboratorio Quimica General (2) (1).pdf
 
Cereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. CerealesCereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. Cereales
 
Video sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptxVideo sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptx
 

CURSORES

  • 1. AREA : BASE DE DATOS II DOCENTE : ING. MARCO AURELIO PORRO CHULLI CARRERA : INGENIERÍA DE SISTEMAS Y TELEMÁTICA INTEGRANTES: CRISTHIAN SERGIO KAYAP YAGKIKAT INGRID LESLY CORONEL ACUÑA
  • 3. Un cursor es un objeto de la Base de Datos usado por las aplicaciones para manipular los datos fila a fila en lugar de hacerlo en bloques de filas como lo hacen los comandos SQL normales
  • 4. SYSTAXIS Declaracion del cursor DECLARE <nombre_cursor> CURSOR FOR <sentencia_sql> Apertura del cursor OPEN <nombre_cursor> //Lectura de la primera fila del cursor FETCH <nombre_cursor> INTO <lista_variables> WHILE (@@FETCH_STATUS = 0) BEGIN
  • 5. // Lectura de la siguiente fila de un cursor FETCH <nombre_cursor> INTO <lista_variables> END Fin del bucle WHILE Cierra el cursor CLOSE <nombre_cursor> //Libera los recursos del cursor DEALLOCATE <nombre_cursor>
  • 6. ADMINISTRACION DE CURSORES (CREACION, MODIFICACION, ELIMINACION
  • 7. Creacion: CREAR UN CURSOR QUE OBTENGA LOS DATOS DE LOS PRODUCTOS DECLARE @col1 VARCHAR(80), DECLARE@col2 INT, DECLARE@col3 NUMERIC(10,2) --CREACION DEL CURSOR DECLARE c_Producto_Basico CURSOR FOR SELECT Descripcion, Stock, PrecioA FROM Producto
  • 8. -ABRIR CURSOR OPEN c_Producto_Basico --MANIPULAR DATOS----- FETCH(LEER) FETCH c_Producto_Basico INTO @col1,@col2,@col3 WHILE @@FETCH_STATUS=0 BEGIN ---LTRIM(ELIMINA ESPACIOS EN BLANCO A LA IZQUIERDA) PRINT @col1+'-'+LTRIM(str(@col2))+'- '+LTRIM(STR(@col3)) FETCH c_Producto_Basico INTO @col1,@col2,@col3 END -CERRAR CURSOR CLOSE c_Producto_Basico --DESALOJAR DEALLOCATE c_Producto_Basico
  • 10. ELIMINACION: CREATE Procedure DBPSRemoveTest_Sp As Begin DECLARE TEST_CURSOR CURSOR FOR SELECT * FROM Test DECLARE @RetPeriod intDECLARE @AuthId Varchar(50)
  • 11. OPEN TEST_CURSOR FETCH NEXT FROM TEST_CURSOR INTO @RETPERIOD,@AUTHID WHILE@@FETCH_STATUS=0 BEGIN delete from test where userid=@RetPeriod and Username=@Authid IF(@@ROWCOUNT=0) PRINT 'Failed to delete the row from the table END FETCH NEXT FROM TEST_CURSOR INTO @RETPERIOD,@AUTHID END CLOSE TEST_CURSOR DEALLOCATE TEST_CURSOR end GO
  • 13. El siguiente ejemplo muestra el uso de un cursor. --Declaracion de variables para el cursor DECLARE @Id int, @Nombre varchar(255), @Apellido1 varchar(255), @Apellido2 varchar(255), @NifCif varchar(20), @FxNacimiento datetime
  • 14. DECLARE cClientes CURSOR FOR SELECT Id, Nombre, Apellido1, Apellido2, NifCif, FxNacimiento FROM CLIENTES --Apertura del cursor OPEN cClientes --Lectura de la primera fila del cursor FETCH cClientes INTO @id, @Nombre, @Apellido1, @Apellido2, @NifCif, @FxNacimiento WHILE (@@FETCH_STATUS = 0) BEGIN PRINT @Nombre + ' ' + @Apellido1 + ' ' + @Apellido2
  • 15. --Lectura de la siguiente fila del cursor FETCH cClientes INTO@id, @Nombre, @Apellido1, @Apellido2, @NifCif, @FxNacimiento END --Cierre del cursor CLOSE cClientes --Liberar los recursos DEALLOCATE cClientes