Открытие статического курсора

Назначение

Открытие статического курсора.

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

  2. Если модуль претранслирован в режиме совместимости со старой версией PCC (ключ -V претранслятора), то помимо собственно открытия дочернего канала оператор OPEN исполняет предложение SQL, иначе исполнение предложения откладывается до первого вызова оператора FETCH в данном курсоре.

  3. SHARED является синонимом AUTOCOMMIT.

  4. Конструкция [EXCLUSIVE | OPTIMISTIC | {SHARED| AUTOCOMMIT}] задает способ обработки транзакций в канале, соответствующем курсору. Если конструкция не задана, по умолчанию используется режим соединения. Не рекомендуется задавать различающиеся режимы работы курсора и соединения.

    Примечание

    Режим OPTIMISTIC устарел (использовать не рекомендуется).

  5. Параметр USING < список переменных > используется для привязки в момент открытия курсора других входных переменных (отличающихся от тех, которые были установлены при объявлении предложения SQL).

  6. Параметр USING DESCRIPTOR < имя дескриптора > используется для открытия динамического курсора. Дескриптор должен быть предварительно объявлен с помощью директивы SQL DESCRIBE и инициализирован (см. SET DESCRIPTOR).