GoConqr has a new look! Let us know what you think.

Mind map

CURSORES

marishitaquispe Spanish

Map content

CURSORES

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

    • 1.- DECLARACIÓN
      • 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 ProdInfo CURSOR FOR SELECT Name FROM Production.Product
          • Donde ProdInfo representará al nombre del cursor y la sentencia “SELECT ProductNumber,Name FROM Production.Product” será el conjunto de datos del mismo.
    • Como comentamos previamente, es posible en este paso definir algunas características del comportamiento del cursor, por ejemplo la sentencia:
      • DECLARE ProdInfo CURSOR READ_ONLY FOR SELECT Name FROM Production.Product
    • 2.- RECORRIDO DEL CURSOR Y ACCESO A LOS DATOS
      • Este paso constará de recorrer los resultados del cursor, la instrucción FETCH permitirá efectuar dicha operación.
        • FETCH NEXT FROM ProdInfo INTO @Description
    • 3.- CIERRE DEL CURSOR
      • 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:
      • CLOSE ProdInfo
      • 4.- DESALOJO DEL CURSOR
        • 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 ProdInfo
        • 5.- EJEMPLO DE CURSOR
          • A continuación juntaremos todos los pasos descriptos previamente y crearemos el ejemplo más simple de un cursor el cual recorrerá la tabla Production.ProductDescription de la base de datos AdventureWorks y mostrará por pantalla el valor del registro Description luego que el mismo ha sido copiado a la variable @Description.
          • DECLARE @Description AS nvarchar(400)
          • DECLARE @Description AS nvarchar(400) DECLARE ProdInfo CURSOR FOR SELECT [Description] FROM bvProduction.ProductD escription OPEN ProdInfo FETCH NEXT FROM ProdInfo INTO @Description WHILE @@fetch_status = 0 BEGIN PRINT @Description FETCH NEXT FROM ProdInfo INTO @Description END CLOSE ProdInfo DEALLOCATE ProdInfo

Information

Description
Mind Map on CURSORES, created by marishitaquispe on 24/11/2015.
Created by
marishitaquispe
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?