Открытие курсора – LINTER_OpenCursor
Прототип функции
L_LONG LINTER_OpenCursor( L_WORD ConnectID, /* идентификатор соединения */ L_WORD *CursorID, /* идентификатор курсора */ L_CHAR *CursorName, /* имя курсора */ L_SWORD NameLen, /* длина имени курсора */ L_LONG Mode); /* режим обработки транзакций */
Входные параметры
Параметр | Описание | |
---|---|---|
ConnectID
| Номер соединения, по которому открывается курсор | |
CursorName
| Необязательное имя курсора, удовлетворяющее синтаксису имен в ЛИНТЕР-SQL, применяется для выборки | |
NameLen
| Длина имени курсора; если NameLen=0 , то считается, что CursorName должно заканчиваться двоичным нулем | |
Mode
| Режим обработки для курсора (может отличаться от режима обработки транзакций соединения). Описание режимов см. в функции LINTER_ConnectCSEx |
Выходные параметры
Параметр | Описание | |
---|---|---|
CursorID
| Номер открытого курсора |
Описание
Открывает курсор по соединению ConnectID
с указанным режимом обработки транзакций, присваивает ему имя CursorName
и возвращает идентификатор курсора. Для каждого соединения может быть открыто несколько курсоров.
Примечания
-
Если адрес
CursorName
равен NULL, то курсор считается неименованным, и для этого курсора нельзя выполнить SQL-запросUPDATE … CURRENT OF Cursor_Name
. -
При открытии курсора все его характеристики (кроме приоритета) получают нулевое значение. Значение приоритета курсор наследует от соединения, по которому он открывается.
Пример
long lError; short nConnID; short nCursID; ... if (lError =LINTER_OpenCursor(nConnID, &nCursID, NULL, 0, mOptimistic)) processing_error(lError, nConnID, 0, 0, "LINTER_OpenCursor");