ROLLBACK(7) PostgreSQL 16.3 Documentation ROLLBACK(7)

ROLLBACK - abort the current transaction

ROLLBACK [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]

ROLLBACK rolls back the current transaction and causes all the updates made by the transaction to be discarded.

WORK
TRANSACTION

Optional key words. They have no effect.

AND CHAIN

If AND CHAIN is specified, a new (not aborted) transaction is immediately started with the same transaction characteristics (see SET TRANSACTION (SET_TRANSACTION(7))) as the just finished one. Otherwise, no new transaction is started.

Use COMMIT to successfully terminate a transaction.

Issuing ROLLBACK outside of a transaction block emits a warning and otherwise has no effect. ROLLBACK AND CHAIN outside of a transaction block is an error.

To abort all changes:

ROLLBACK;

The command ROLLBACK conforms to the SQL standard. The form ROLLBACK TRANSACTION is a PostgreSQL extension.

BEGIN(7), COMMIT(7), ROLLBACK TO SAVEPOINT (ROLLBACK_TO_SAVEPOINT(7))

2024 PostgreSQL 16.3