Cursor (Transact-SQL)Cursors (Transact-SQL)

Gilt für: JaSQL Server JaAzure SQL-Datenbank NeinAzure Synapse Analytics (SQL DW) NeinParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

MicrosoftMicrosoft SQL ServerSQL Server-Anweisungen erzeugen ein vollständiges Resultset. Manchmal ist es jedoch von Vorteil, wenn die Ergebnisse zeilenweise verarbeitet werden.SQL ServerSQL Server statements produce a complete result set, but there are times when the results are best processed one row at a time. Das Öffnen eines Cursors auf einem Resultset ermöglicht das zeilenweise Verarbeiten des Resultsets.Opening a cursor on a result set allows processing the result set one row at a time. Sie können einen Cursor einer Variablen oder einem Parameter mit einem cursor-Datentyp zuweisen.You can assign a cursor to a variable or parameter with a cursor data type.

Cursorvorgänge werden für folgende Anweisungen unterstützt: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

Folgende Systemfunktionen und gespeicherte Systemprozeduren unterstützen ebenfalls Cursor: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

Weitere InformationenSee Also

CursorCursors