RELEASE [ SAVEPOINT ] nom_pointsauvegarde
RELEASE SAVEPOINT détruit un point de sauvegarde défini précédemment dans la transaction courante.
La destruction d'un point de sauvegarde le rend indisponible comme point de retour. C'est, pour l'utilisateur, le seul comportement visible. Elle 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 sans attendre la fin de la transaction.
RELEASE SAVEPOINT détruit aussi tous les points de sauvegarde créés ultérieurement au point de sauvegarde indiqué.
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 le plus récent est libéré.
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.