Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
ROLLBACK
Arrête la transaction en cours et ignore toutes les mises à jour effectuées par cette transaction.
Cette commande effectue la même fonction que la commande ABORT.
Syntaxe
ROLLBACK [ WORK | TRANSACTION ]
Paramètres
- WORK
-
Mot-clé facultatif. Ce mot-clé n’est pas pris en charge dans une procédure stockée.
- TRANSACTION
-
Mot-clé facultatif. WORKet TRANSACTION sont des synonymes. Aucun des deux n’est pris en charge dans une procédure stockée.
Pour plus d'informations sur l'utilisation ROLLBACK au sein d'une procédure stockée, consultezGestion des transactions.
Exemple
L’exemple suivant crée une table, puis démarre une transaction où les données sont insérées dans la table. La ROLLBACK commande annule ensuite l'insertion des données pour laisser le tableau vide.
La commande suivante crée un exemple de table appelé MOVIE _ GROSS :
create table movie_gross( name varchar(30), gross bigint );
La prochaine série de commandes démarre une transaction qui insère deux lignes de données dans la table :
begin; insert into movie_gross values ( 'Raiders of the Lost Ark', 23400000); insert into movie_gross values ( 'Star Wars', 10000000 );
Puis, la commande suivante sélectionne les données de la table pour montrer qu’elles ont été correctement insérées :
select * from movie_gross;
La sortie de la commande montre que les deux lignes ont été insérées avec succès :
name | gross -------------------------+---------- Raiders of the Lost Ark | 23400000 Star Wars | 10000000 (2 rows)
Cette commande restaure les modifications des données à l’emplacement où la transaction a commencé :
rollback;
La sélection de données de la table affiche maintenant une table vide :
select * from movie_gross; name | gross ------+------- (0 rows)