CLOSE

CLOSE — fecha o cursor

Sinopse

CLOSE { nome | ALL }

Descrição

O comando CLOSE libera os recursos associados a um cursor aberto. Após o cursor ser fechado, nenhuma operação subsequente será permitida nele. O cursor deverá ser fechado quando não for mais necessário.

Todo cursor não persistente aberto é implicitamente fechado quando a transação é encerrada pelos comandos COMMIT ou ROLLBACK. Um cursor persistente é implicitamente fechado quando a transação que o criou é interrompida por meio de ROLLBACK. Se a transação de criação for efetivada com sucesso, o cursor persistente permanecerá aberto até que um comando CLOSE explícito seja executado sobre ele, ou o cliente se desconecte.

Parâmetros

nome

O nome do cursor aberto a ser fechado.

ALL

Fecha todos os cursores abertos.

Notas

O PostgreSQL não possui a instrução de cursor OPEN explícita; o cursor é considerado aberto quando é definido. Deve ser usado o comando DECLARE para definir o cursor.

Podem ser vistos todos os cursores disponíveis consultando a visão do sistema pg_cursors.

Se o cursor for fechado após um ponto de salvamento posteriormente desfeito, o CLOSE não será desfeito; ou seja, o cursor permanecerá fechado.

Exemplo

Fechar o cursor liahona:

CLOSE liahona;

Conformidade

O comando CLOSE está em total conformidade com o padrão SQL, porém o comando CLOSE ALL é uma extensão do PostgreSQL.

Veja também

DECLARE, FETCH, MOVE