Учебно-справочное пособие по СУБД Informix
5c8b6e8c

Манипуляция "курсором".



Манипуляция "курсором".

DECLARE cursor-name [SCROLL] CURSOR [WITH HOLD] FOR

{ SELECT-st [FOR UPDATE [OF column-list]] |

INSERT-st | statment-id }

SCROLL - фактически, создается временная таблица.

statment-id - приготовленого PREPARE

HOLD - игнорировать конец транзакции
Внимание: SCROLL cursor нельзя открывать FOR UPDATE, зато для не-SCROLL cursora можно использовать
Внимание: оператор DECLARE cursor-name должен располагаться в тексте программы выше любого использования этого курсора. OPEN cursor-name [USING список переменных]

CLOSE cursor-name

для SELECT-курсора:

FOREACH cursor-name [INTO список переменных]

. . .

[CONTINUE FOREACH]

. . .

[EXIT FOREACH]

. . .

END FOREACH

FETCH { NEXT | PREVIOUS | FIRST | LAST | CURRRENT |

RELATIVE m | ABSOLUTE n ] cursor-name

[INTO список переменных]
если cursor not SCROLL то можно только NEXT
если строки не обнаружено, то status=NOTFOUND для INSERT-курсора:

PUT cursor-name [FROM список переменных] ввести строку в буфер,

[заменив знаки ? для DECLAREd INSERT-st на список переменных]

FLUSH cursor-name вытолкнуть буфер

^^ SQL операторы ^^

Описания CREATE, DROP, DATABASE, ALTER, RENAME

Манипуляция данными DELETE, INSERT, UPDATE, LOAD, UNLOAD

Оператор SELECT

Операторы транзакции и восстановления BEGIN WORK, COMMIT WORK, ROLLBACK WORK, START DATABASE, ...



Содержание раздела