Перейти к основному содержимому

CLOSE

примечание

Эта страница переведена при помощи нейросети GigaChat.

CLOSE - закрытие курсора.

Синтаксис

CLOSE { name | ALL }

Описание

CLOSE освобождает ресурсы, связанные с открытым курсором. После закрытия курсора никакие последующие операции с ним не допускаются. Курсор следует закрывать, когда он больше не нужен.

Каждый открытый курсор без удержания автоматически закрывается при завершении транзакции через COMMIT или ROLLBACK. Удерживаемый курсор автоматически закрывается, если транзакция, которая его создала, завершается через ROLLBACK. Если создающая транзакция успешно фиксируется, удерживаемый курсор остается открытым до явного выполнения CLOSE или отключения клиента.

Параметры

name
Имя открытого курсора, который должен быть закрыт.
ALL
Закрытие всех открытых курсоров.

Примечания

В PostgreSQL нет отдельной команды OPEN — курсор считается открытым с момента его объявления с помощью команды DECLARE.

Посмотреть все активные курсоры можно с помощью представления pg_cursors.

Если курсор был закрыт внутри точки сохранения, а потом выполнен ROLLBACK TO SAVEPOINT, то закрытие курсора не отменяется — курсор остается закрытым.

Примеры

Закрытие курсора liahona:

CLOSE liahona;

Совместимость

CLOSE полностью соответствует стандарту SQL. CLOSE ALL является расширением PostgreSQL.

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

DECLARE, FETCH, MOVE