--- title: "ABORT" id: sql-abort pg_version: "20devel" --- # ABORT — abort the current transaction ## Synopsis ``` ABORT [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ] ``` ## Description `ABORT` rolls back the current transaction and causes all the updates made by the transaction to be discarded. This command is identical in behavior to the standard SQL command [`ROLLBACK`](sql-rollback.md), and is present only for historical reasons. ## Parameters **`WORK`**, **`TRANSACTION`** Optional key words. They have no effect. **`AND CHAIN`** If `AND CHAIN` is specified, a new transaction is immediately started with the same transaction characteristics (see [`SET TRANSACTION`](sql-set-transaction.md)) as the just finished one. Otherwise, no new transaction is started. ## Notes Use [`COMMIT`](sql-commit.md) to successfully terminate a transaction. Issuing `ABORT` outside of a transaction block emits a warning and otherwise has no effect. ## Examples To abort all changes: ABORT; ## Compatibility This command is a PostgreSQL extension present for historical reasons. `ROLLBACK` is the equivalent standard SQL command. ## See Also [BEGIN](sql-begin.md), [COMMIT](sql-commit.md), [ROLLBACK](sql-rollback.md)