Открытие статического курсора
Назначение
Открытие статического курсора.
Синтаксис
<открытие статического курсора>::=
EXEC SQL [AT <имя соединения>]
OPEN <имя курсора>
[EXCLUSIVE | OPTIMISTIC | {SHARED| AUTOCOMMIT}]
[ {<использование переменных основного языка>
| <использование дескриптора>} ]
<использование переменных основного языка>::=
{ USING } < переменная основного языка> [ {, < переменная основного языка>} …} ]
<использование дескриптора>::=
{ USING } SQL DESCRIPTOR <имя дескриптора>
Описание
-
<Имя соединения>задает соединение, по которому открывается курсор. Значение параметра может быть задано переменной типа «соединение» (DATABASE) либо символьной константой. В любом случае заданное значение должно быть ранее использовано в оператореCONNECT. Если параметр<имя соединения>опущен, курсор открывается для неименованного соединения. При открытии курсора на соединении создается дочерний канал, которому присваивается имя курсора (первые 18 символов). -
Если модуль претранслирован в режиме совместимости со старой версией PCC (ключ -V претранслятора), то помимо собственно открытия дочернего канала оператор OPEN исполняет предложение SQL, иначе исполнение предложения откладывается до первого вызова оператора
FETCHв данном курсоре. -
SHAREDявляется синонимомAUTOCOMMIT. -
Конструкция
[EXCLUSIVE | OPTIMISTIC | {SHARED| AUTOCOMMIT}]задает способ обработки транзакций в канале, соответствующем курсору. Если конструкция не задана, по умолчанию используется режим соединения. Не рекомендуется задавать различающиеся режимы работы курсора и соединения.Примечание
Режим OPTIMISTIC устарел (использовать не рекомендуется).
-
Параметр
USING <список переменных>используется для привязки в момент открытия курсора других входных переменных (отличающихся от тех, которые были установлены при объявлении предложения SQL). -
Параметр
USING DESCRIPTOR <имя дескриптора>используется для открытия динамического курсора. Дескриптор должен быть предварительно объявлен с помощью директивы SQLDESCRIBEи инициализирован (см.SET DESCRIPTOR).