Оглавление  | Назад  | Вперед

Справочник по инструкциям и функциям InterBase SQL

FETCH

Описание
Синтаксис
Примеры
Смотри так же

Описание

FETCH возвращает одну строку за один раз в программу из активного набора курсора. Первая операция FETCH возвращает первую строку из активного набора. Последующие инструкции FETCH перемещает курсор по активному набору возвращая по одной строке за один раз, пока не станет невозможным найти строку и SQLCODE не вернет значение 100.

Курсор это односторонний указатель на упорядоченный набор строк возвращаемых выражением SELECT в инструкции DECLARE CURSOR. Курсор позволяет последовательный доступ к отысканным строкам. Существует четыре связанных инструкции для работы с курсором:

Стадия Инструкция Назначение
1 DECLARE CURSOR Объявляет курсор. Инструкция SELECT определяет строки возвращаемые для курсора.
2 OPEN Отыскивает строки определенные, чтобы вернуть, с помощью DECLARE CURSOR. Результирующие строки становятся текущим набором курсора.
3 FETCH Возвращает текущую строку из текущего набора, начиная с первой строки.
4 CLOSE Закрывает курсор и освобождает системные ресурсы.

Количество, размер, тип данных и порядок столбцов в FETCH должно быть такимже, как перечислено в выражении запроса в соответствующей инструкции DECLARE CURSOR.

Эта инструкция может быть использована в SQL и в DSQL.

К началу страницы...

Синтаксис

SQL:

FETCH cursor
[INTO :hostvar [[INDICATOR] :indvar]
    [, :hostvar [[INDICATOR] :indvar] ...]];

DSQL:

FETCH cursor {INTO | USING} SQL DESCRIPTOR xsqlda

Для BLOB:

Смотри: FETCH (BLOB)

Аргумент Описание
cursor Имя открытого курсора из которого выбираются строки.
:hostvar Переменная базового языка, чтобы сохранить значения возвращенные с помощью FETCH.
:invar Индикаторная переменная, для сообщения, что столбец содержит неизвестное или NULL значение.
[INTO | USING] SQL DESCRIPTOR ООпределяет, что значения должны быть возвращены в определенном XSQLDA.
xsqlda XSQLDA переменная базового языка.

К началу страницы...

Примеры

SQL:

Следующая внедренная инструкция SQL выбирает столбец из активного набора курсора:

EXEC SQL
  FETCH PROJ_CNT INTO :department, :hcnt;

К началу страницы...

Смотри так же:

К началу страницы...


Оглавление  | Назад  | Вперед