Normalmente , las peticiones de SQL ( Structured Query Language) trabajan con conjuntos completos de datos. Sin embargo , hay ocasiones en las que puede ser mejor o incluso necesario para trabajar con los datos de una fila a la vez. Por estas circunstancias , los cursores son la mejor opción . Ellos permiten una operación que se realiza en cada fila de un conjunto de datos , uno a la vez . Por ejemplo , los cursores son la manera más fácil de moverse a través de todo un conjunto de datos y aplicar un procedimiento para cada fila del conjunto . Sin embargo , esto tiene un costo : cursores son generalmente mucho más lento que otras operaciones de SQL . Instrucciones
1
Escriba el siguiente comando en la consola de SQL Server para declarar el cursor :
DECLARE CURSOR cursor1
2
Proporcionar una declaración SELECT que recupera los datos del cursor trabajarán sobre :
PARA
SELECT last_name
DESDE empleados
FOR UPDATE OF apellidos
Esto recuperará una lista de last_names de una tabla de empleados . También especifica que se va a actualizar el last_name a medida que avanza a través de los datos del cursor
3
Abra el cursor escribiendo lo siguiente : .
OPEN cursor1
Página 4
Comience iteración a través de las filas , escriba lo siguiente :
TRAER DESPUÉS dE cursor1
eN @ LASTNAME
MIENTRAS @ @ FETCH_STATUS = 0 < br >
COMENZAR
5
Actualizar el apellido escribiendo lo siguiente :
SUPERIOR EXEC (@ aPELLIDO )
Esto fijará el apellido del fila actual por lo que es en mayúsculas
6
Fetch otra fila antes de terminar el bucle while comenzado en el paso 4 .
TRAER DESPUÉS dE cursor1
eN @ LASTNAME
FIN
7
cerrar el cursor y liberar su nombre para que pueda ser utilizado de nuevo si es necesario:
CLOSE cursor1
DEALLOCATE cursor1