sp_cursoroption (Transact-SQL)

Применимо к:SQL Server

Задает параметры курсора или возвращает сведения о курсоре, созданные sp_cursoropen хранимой процедурой. sp_cursoroption вызывается путем указания идентификатора =8 в пакете табличного потока данных (TDS).

Соглашения о синтаксисе Transact-SQL

Синтаксис

  
sp_cursoroption cursor, code, value  

Аргументы

курсор
Представляет собой значение дескриптора, созданное SQL Server и возвращаемое sp_cursoropen хранимой процедурой. для выполнения курсора требуется входное значение int .

code
Служит для указания различных коэффициентов возвращаемых значений курсора. Для кода требуется одно из следующих входных значений int :

Значение Наименование Описание
0x0001 TEXTPTR_ONLY Возвращает не фактические данные, а текстовый указатель для определенных назначенных столбцов типа text или image.

TEXTPTR_ONLY позволяет использовать текстовые указатели в качестве дескрипторов для объектов BLOB-объектов, которые впоследствии могут быть выборочно извлечены или обновлены с помощью средств Transact-SQL или DBLIB (например, Transact-SQL READTEXT или DBLIB DBWRITETEXT).

Если присвоено значение «0», то все столбцы типа text или image из выбранного списка будут возвращать вместо данных текстовые указатели.
0x0002 CURSOR_NAME Присваивает имя, указанное в значении курсору. Это, в свою очередь, позволяет ODBC использовать инструкции Transact-SQL, размещенные UPDATE/DELETE, на курсорах, открытых с помощью sp_cursoropen.

Строка может иметь любой символьный тип данных или UNICODE.

Так как инструкции TRANSact-SQL с позиционированием UPDATE/DELETE работают по умолчанию в первой строке в жировом курсоре, sp_cursor SETPOSITION следует использовать для размещения курсора перед выдачой позиционированного оператора UPDATE/DELETE.
0x0003 TEXTDATA Возвращает фактические данные, а не текстовый указатель для определенных столбцов типа text или image при последующей выборке (т. е. отменяет действие TEXTPTR_ONLY).

Если для определенного столбца включен режим TEXTDATA, то выполняется повторная выборка или обновление строки, и после этого можно опять присвоить значение TEXTPTR_ONLY. Как и в случае с TEXTPTR_ONLY, целочисленный параметр значения задает номер столбца. Нулевое значение возвращает все текстовые столбцы или столбцы изображений.
0x0004 SCROLLOPT Параметр прокрутки. Дополнительные сведения см. ниже в разделе «Значения кодов возврата».
0x0005 CCOPT Параметр управления параллелизмом. Дополнительные сведения см. ниже в разделе «Значения кодов возврата».
0x0006 ROWCOUNT Количество строк, находящихся в результирующем наборе.

Примечание. RowCOUNT может измениться, так как значение, возвращаемое sp_cursoropen если используется асинхронное население. Значение -1 возвращается, если число строк неизвестно.

значение
Указывает значение, возвращаемое кодом. значением является обязательный параметр, который вызывает 0x0001, 0x0002 или 0x0003 входное значение кода .

Заметка

Значение кода 2 — это строковый тип данных. Любое другое входное значение кода или возвращаемое значением является целым числом.

Значения кода возврата

Параметр значения может возвращать одно из следующих значений кода .

Возвращаемое значение Description
0x0004 SCROLLOPT
0X0005 CCOPT
0X0006 ROWCOUNT

Параметр значения возвращает одно из следующих значений SCROLLOPT.

Возвращаемое значение Description
0x0001 KEYSET
0x0002 DYNAMIC
0x0004 FORWARD_ONLY
0x0008 STATIC

Параметр значения возвращает одно из следующих значений CCOPT.

Возвращаемое значение Description
0x0001 READ_ONLY
0x0002 SCROLL_LOCKS
0x0004 или 0x0008 OPTIMISTIC

См. также

Системные хранимые процедуры (Transact-SQL)
sp_cursor (Transact-SQL)
sp_cursoropen (Transact-SQL)