---
name: "COMMIT"
section: "7"
platform: "linux"
package: "postgresql"
version: "18.6-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/COMMIT"
---

# COMMIT(7)

commit the current transaction

## NAME

COMMIT - commit the current transaction

## SYNOPSIS

```
COMMIT [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]
```

## DESCRIPTION

**COMMIT** commits the current transaction. All changes made by the transaction become visible to others and are guaranteed to be durable if a crash occurs.

## 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 ([**SET\_TRANSACTION**(7)](/SET_TRANSACTION/7.md))) as the just finished one. Otherwise, no new transaction is started.

## NOTES

Use [**ROLLBACK**(7)](/ROLLBACK/7.md) to abort a transaction.

Issuing **COMMIT** when not inside a transaction does no harm, but it will provoke a warning message. **COMMIT AND CHAIN** when not inside a transaction is an error.

## EXAMPLES

To commit the current transaction and make all changes permanent:

```
COMMIT;
```

## COMPATIBILITY

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

## SEE ALSO

[**BEGIN**(7)](/BEGIN/7.md), [**ROLLBACK**(7)](/ROLLBACK/7.md)
