Cursores (Transact-SQL)Cursors (Transact-SQL)

Se aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) SíAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL DatabaseSe aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) SíAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database

Las instrucciones de MicrosoftMicrosoft SQL ServerSQL Server producen un conjunto de resultados completo, pero hay ocasiones en que los resultados se procesan mejor de fila en fila.MicrosoftMicrosoft SQL ServerSQL Server statements produce a complete result set, but there are times when the results are best processed one row at a time. Abrir un cursor sobre un conjunto de resultados permite procesar el conjunto de resultados de fila en fila.Opening a cursor on a result set allows processing the result set one row at a time. Puede asignar un cursor a una variable o parámetro con un tipo de datos cursor.You can assign a cursor to a variable or parameter with a cursor data type.

Las operaciones de cursor están admitidas en las siguientes instrucciones:Cursor operations are supported on these statements:

CLOSECLOSE

CREATE PROCEDURECREATE PROCEDURE

DEALLOCATEDEALLOCATE

DECLARE CURSORDECLARE CURSOR

DECLARE @local_variableDECLARE @local_variable

DELETEDELETE

FETCHFETCH

OPENOPEN

UPDATEUPDATE

SETSET

Las siguientes funciones del sistema y procedimientos almacenados del sistema admiten también cursores:These system functions and system stored procedures also support cursors:

@@CURSOR_ROWS@@CURSOR_ROWS

CURSOR_STATUSCURSOR_STATUS

@@FETCH_STATUS@@FETCH_STATUS

sp_cursor_listsp_cursor_list

sp_describe_cursorsp_describe_cursor

sp_describe_cursor_columnssp_describe_cursor_columns

sp_describe_cursor_tablessp_describe_cursor_tables

Vea tambiénSee Also

CursoresCursors