sp_cursoroption (Transact-SQL)

Gilt für: SQL Server

Legt Cursoroptionen fest oder gibt Cursorinformationen zurück, die von der sp_cursoropen gespeicherten Prozedur erstellt wurden. sp_cursoroption wird aufgerufen, indem in einem TDS-Paket (Tabular Data Stream) angegeben ID = 8 wird.

Transact-SQL-Syntaxkonventionen

Syntax

sp_cursoroption cursor , code , value
[ ; ]

Argumente

Cursor

Ein handle von SQL Server generierter Wert und wird von der sp_cursoropen gespeicherten Prozedur zurückgegeben. Der Cursorparameter ist int und kann nicht sein NULL.

code

Wird verwendet, um verschiedene Faktoren der Cursorrückgabewerte festzulegen. Der Codeparameter ist int und muss einen der folgenden Werte aufweisen:

Wert Name Beschreibung
0x0001 TEXTPTR_ONLY Gibt für bestimmte angegebene Text- oder Bildspalten den Textzeiger, nicht aber die tatsächlichen Daten zurück.

TEXTPTR_ONLY ermöglicht die Verwendung von Textzeigern als Handles für BLOB-Objekte, die später mithilfe von Transact-SQL- oder DBLIB-Einrichtungen (z. B. Transact-SQL READTEXT oder DBLIB DBWRITETEXT) selektiv abgerufen oder aktualisiert werden können.
Wenn ein 0 Wert zugewiesen ist, geben alle Text- und Bildspalten in der Auswahlliste Textzeiger anstelle von Daten zurück.
0x0002 CURSOR_NAME Weist dem Cursor den im Wert angegebenen Namen zu, wodurch ODBC Transact-SQL-positionierteDELETE UPDATE/Anweisungen für Cursor verwenden kann, die über sp_cursoropengeöffnet werden.

Die Zeichenfolge kann als beliebiges Zeichen oder Unicode-Datentyp angegeben werden.
Da Transact-SQL-Positionierte Anweisungen standardmäßig in der ersten Zeile eines Fettcursors ausgeführt werden, sollte verwendet werden, sp_cursor SETPOSITION um den Cursor vor dem Ausgeben der positionierten/DELETE UPDATEAnweisung zu positionieren.UPDATE/DELETE
0x0003 TEXTDATA Gibt die tatsächlichen Daten, nicht den Textzeiger, für bestimmte Text- oder Bildspalten für nachfolgende Abrufe zurück (d. a. dies macht den Effekt rückgängig TEXTPTR_ONLY).

Wenn TEXTDATA für eine bestimmte Spalte aktiviert ist, wird die Zeile zurückgesendet oder aktualisiert und kann dann zurück auf TEXTPTR_ONLY. Wie bei TEXTPTR_ONLYdiesem Parameter ist der Wertparameter eine ganze Zahl, die die Spaltennummer angibt und ein Nullwert alle Text- oder Bildspalten zurückgibt.
0x0004 SCROLLOPT Option für den Bildlauf. Weitere Informationen finden Sie unter Rückgabecodewerte.
0x0005 CCOPT Option für die Parallelitätssteuerung. Weitere Informationen finden Sie unter Rückgabecodewerte.
0x0006 ROWCOUNT Die Anzahl der aktuell im Resultset enthaltenen Zeilen.

Hinweis: Möglicherweise ROWCOUNT wurde der Wert geändert, der zurückgegeben sp_cursoropen wird, wenn asynchrone Grundgesamtheit verwendet wird. Der Wert -1 wird zurückgegeben, wenn die Anzahl der Zeilen unbekannt ist.

value

Legt den von Code zurückgegebenen Wert fest. "value " ist ein erforderlicher Parameter, der einen 0x0001Eingabewert 0x0002oder 0x0003 codeeingabewert aufruft.

Ein Codewert von 2 ist ein Zeichenfolgendatentyp. Alle anderen Codewerteingaben oder vom Wert zurückgegebenen Codewerte sind ein Int.

Rückgabecodewerte

Der Wertparameter gibt möglicherweise einen der folgenden Codewerte zurück.

Rückgabewert Beschreibung
0x0004 SCROLLOPT
0X0005 CCOPT
0X0006 ROWCOUNT

Der Wertparameter gibt einen der folgenden SCROLLOPT Werte zurück.

Rückgabewert Beschreibung
0x0001 KEYSET
0x0002 DYNAMIC
0x0004 FORWARD_ONLY
0x0008 STATIC

Der Wertparameter gibt einen der folgenden CCOPT Werte zurück.

Rückgabewert Beschreibung
0x0001 READ_ONLY
0x0002 SCROLL_LOCKS
0x0004 or 0x0008 OPTIMISTIC