lunes 12 de septiembre de 2011

cursor en SQL Server

Ejemplo de como hacer un cursor dentro de un proceso almacenado para una base de datos SQL Server.

DECLARE cursor CURSOR
LOCAL FAST_FORWARD
FOR
SELECT col1, col2
FROM tabla
WHERE columna = filtrp
OPEN cursor
FETCH NEXT FROM cursor INTO @resultadocol1, @resultadocol2
WHILE @@FETCH_STATUS=0
BEGIN
UPDATE tabla2
SET col = @resultadocol1
WHERE otracol = @resultadocol2
FETCH NEXT FROM cursor INTO @resultadocol1, @resultadocol2
END
CLOSE cursor
DEALLOCATE cursor