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.