# COMMIT

The `COMMIT` command commits the open transaction if one exists.

## Syntax

```
COMMIT [ WORK ] [ AND [ NO ] CHAIN ] [ [ NO ] RELEASE ]

```

## Remarks

* `[ AND [ NO ] CHAIN ]` and `[ [ NO ] RELEASE ]` are ignored as these options are not currently supported by SingleStore.
* This command must be run on the master aggregator or a child aggregator node (see [Node Requirements for SingleStore Commands](https://docs.singlestore.com/db/v9.1/reference/sql-reference/cluster-management-commands.md). Note that you must connect to the master aggregator when running this command on reference tables.
* If the transaction is unsuccessful or needs to be reverted, then execute the [ROLLBACK](https://docs.singlestore.com/db/v9.1/reference/sql-reference/data-manipulation-language-dml/rollback.md) command.

## Example

For this example, consider the following `Employee` table:

| ID | Name  |
| -- | ----- |
| 30 | Jimmy |
| 20 | Rob   |
| 40 | Rick  |

```sql
BEGIN;
UPDATE Employee SET Name = "Jim" WHERE ID = 30;

```

Run the `SELECT` query to verify if the `UPDATE` is correct:

```sql
SELECT * FROM Employee;

```

```output

+------+-------+
| ID   | Name  |
+------+-------+
|   30 | Jim   |
|   20 | Rob   |
|   40 | Rick  |
+------+-------+

```

Run `COMMIT` since the `UPDATE` was successful.

```sql
COMMIT;

```

**Note**: Before the user runs `COMMIT` or `ROLLBACK`, only that user can see the updates made after the [BEGIN](https://docs.singlestore.com/db/v9.1/reference/sql-reference/data-manipulation-language-dml/begin.md) statement was run.

***

Modified at: June 11, 2026

Source: [/db/v9.1/reference/sql-reference/data-manipulation-language-dml/commit/](https://docs.singlestore.com/db/v9.1/reference/sql-reference/data-manipulation-language-dml/commit/)

(An index of the documentation is available at /llms.txt)
