Другая разновидность оператора определения курсора над динамически подготовленным оператором выборки
Для этого оператора действуют следующие синтаксические правила:
<allocate cursor statement> ::=
ALLOCATE <extended cursor name> [INSENSITIVE] [SCROLL]
CURSOR FOR <extended statement name>
<extended cursor name> ::=
[<scope option>] <simple value specification>
Курсоры, определяемые с помощью оператора ALLOCATE CURSOR, фактически создаются при выполнении такого оператора и уничтожаются при выполнении оператора DEALLOCATE PREPARE или при конце транзакции. В этом операторе имена курсора и подготовленного оператора SQL могут задаваться не только в литеральной форме, но и через переменные (т.е. может использоваться косвенное именование).
<scope option> относится к области видимости имен: в пределах текущего модуля или в пределах текущей сессии.