Crear Stored Procedure el cual regresa un cursor como parámetro de retorno:
Primero creamos el StoredProcedure:
CREATE PROCEDURE cursor_salida (@salida CURSOR VARYING OUTPUT) AS SET @salida = CURSOR FOR SELECT item FROM items --o el sql que se necesite... OPEN @salida
Lo llamamos y hacemos con el cursor lo que necesitemos:
DECLARE @cur AS CURSOR DECLARE @i AS NVARCHAR(15) EXEC cursor_salida @salida=@cur OUTPUT WHILE 1=1 BEGIN FETCH NEXT FROM @cur INTO @i PRINT @i -- operar los datos del cursor ... IF @@FETCH_STATUS = -1 BREAK END
