Sei sulla pagina 1di 3

UNIVERSIDAD NACIONAL

“SANTIAGO ANTÚNEZ DE MAYOLO”

INGENIERÍA DE SISTEMAS E INFORMÁTICA

CURSO: PROGRAMACIÓN II

TEMA: USO CURSORES

DOCENTE: ING. SILVA ZAPATA MIGUEL ÁNGEL

ALUMNO: ASIS ESPINOZA NELSON

FACULTAD: CIENCIAS

CICLO: V

HUARAZ 15/05/19

1
Cursor:

En SQL Server un cursor puede definirse como un elemento que representará a un conjunto de
datos determinado por una consulta, el cursor permitirá recorrer fila a fila, leer y eventualmente
modificar dicho conjunto de resultados.

La creación y utilización de un cursor estará compuesta, como es de esperarse, por una serie de
instrucciones T-SQL, las cuales podrán separarse en grupos bien diferenciados, los cuales son:
Declaración, Apertura, Acceso a datos, Cierre y Desalojo.

 Declarar el cursor, utilizando DECLARE

El primer paso constará de la declaración del cursor, donde se indicarán (junto con el nombre del
cursor) la consulta que el mismo representará y algunas otras características bastante interesantes.

Un ejemplo de declaración de cursor es el siguiente:

DECLARE dDocentes CURSOR FOR

SELECT Id, nombre, Apellidos,dni

FROM docente

 Abrir el cursor, utilizando OPEN

La apertura del cursor ejecutará la consulta definida en el paso previo y cargará los datos en el
mismo. La función OPEN de T-SQL permitirá efectuar esta terea, para continuar con el ejemplo
previo la forma de abrir el cursor será la siguiente:

OPEN dDocentes;

 Leer los datos del cursor, utilizando FETCH ... INTO

Este paso constará de recorrer los resultados del cursor, la instrucción FETCH permitirá efectuar
dicha operación. Las filas leídas podrán copiarse a variables utilizando la sentencia INTO en
combinación con la sentencia FETCH, por ejemplo, la sentencia:

FETCH dDocentes INTO @id, @nombre, @Apellidos,

@dni

Tomará la siguiente fila de resultados del cursor y lo alojará en las variables.

2
 Cerrar el cursor, utilizando CLOSE

En el cierre del cursor se liberarán los registros tomados por el mismo. Una vez que el cursor es
cerrado ya no podrá recorrerse el conjunto de resultados hasta que el mismo sea reabierto, la
sentencia CLOSE cerrará un cursor abierto y la sintaxis puede verse a continuación:

CLOS CLOSE dDocentes

 Liberar el cursor, utilizando DEALLOCATE

Este paso eliminará la referencia al cursor definido previamente, por lo que ya no será posible
realizar una reapertura del mismo, en este caso la sintaxis será:

DEALLOCATE dDocentes

Ejemplo:

Potrebbero piacerti anche