Открытие статического курсора
Назначение
Открытие статического курсора.
Синтаксис
< открытие статического курсора >::= 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
).