RELEASE SAVEPOINT

Nom

RELEASE SAVEPOINT -- détruit un point de sauvegarde défini précédemment

Synopsis

RELEASE [ SAVEPOINT ] nom_pointsauvegarde

Description

RELEASE SAVEPOINT détruit un point de sauvegarde précédemment défini dans la transaction courante.

Détruire un point de sauvegarde le rend indisponible comme point de retour mais il n'y a pas d'autre comportement visible par l'utilisateur. Il ne défait pas les commandes exécutées après l'établissement du point de sauvegarde. (Pour cela, voir ROLLBACK TO SAVEPOINT.) Détruire un point de sauvegarde quand il n'est plus nécessaire peut permettre au système de récupérer certaines ressources avant la fin de la transaction.

RELEASE SAVEPOINT détruit aussi tous les points de sauvegarde qui ont été créés après l'établissement du point de sauvegarde indiqué.

Paramètres

nom_pointsauvegarde

Le nom du point de sauvegarde à détruire.

Notes

Spécifier un nom de point de sauvegarde qui n'a pas été défini est une erreur.

Il n'est pas possible de libérer un point de sauvegarde lorsque la transaction est dans un état d'annulation.

Si plusieurs points de transaction ont le même nom, seul celui qui a été défini le plus récemment est libéré.

Exemples

Pour établir puis détruire un point de sauvegarde :

BEGIN;
    INSERT INTO table1 VALUES (3);
    SAVEPOINT mon_pointsauvegarde;
    INSERT INTO table1 VALUES (4);
    RELEASE SAVEPOINT mon_pointsauvegarde;
COMMIT;

La transaction ci-dessus insère à la fois 3 et 4.

Compatibilité

Cette commande est conforme au standard SQL:2003. Le standard spécifie que le mot clé SAVEPOINT est obligatoire mais PostgreSQL autorise son omission.

Voir aussi

BEGIN, COMMIT, ROLLBACK, ROLLBACK TO SAVEPOINT, SAVEPOINT