CLOSE — Fermer un curseur
CLOSE { nom
| ALL }
CLOSE
libère les ressources associées à un curseur ouvert.
Une fois le curseur fermé, aucune opération n'est autorisée sur celui-ci. Un
curseur doit être fermé lorsqu'il n'est plus nécessaire.
Tout curseur volatil ouvert (en anglais non-holdable
cursor
, soit un curseur qui ne perdure pas au-delà de la
transaction qui l'a créé) est fermé implicitement lorsqu'une transaction est
terminée avec COMMIT
ou ROLLBACK
. Un
curseur persistant (en anglais holdable cursor
, soit un
curseur qui perdure au-delà de la transaction initiale) est implicitement
fermé si la transaction qui l'a créé est annulée via
ROLLBACK
. Si cette transaction est validée (avec succès),
ce curseur reste ouvert jusqu'à ce qu'une commande CLOSE
explicite soit lancée ou jusqu'à la déconnexion du client.
name
Le nom du curseur ouvert à fermer.
ALL
Ferme tous les curseurs ouverts.
PostgreSQL ne possède pas d'instruction explicite
d'ouverture (OPEN
) de curseur ; un curseur est
considéré ouvert à sa déclaration. Un curseur est déclaré à l'aide de
l'instruction DECLARE
.
Vous pouvez voir tous les curseurs disponibles en exécutant une requête sur
la vue système pg_cursors
.
Si un curseur est fermé après un point de sauvegarde qui est annulé par la
suite, la commande CLOSE
n'est pas annulée ;
autrement dit, le curseur reste fermé.
Fermer le curseur liahona
:
CLOSE liahona;
CLOSE
est totalement conforme au standard SQL.
CLOSE ALL
est une extension
PostgreSQL.