| --- |
| title: ROLLBACK |
| --- |
| |
| Aborts the current transaction. |
| |
| ## <a id="topic1__section2"></a>Synopsis |
| |
| ``` pre |
| ROLLBACK [WORK | TRANSACTION] |
| ``` |
| |
| ## <a id="topic1__section3"></a>Description |
| |
| `ROLLBACK` rolls back the current transaction and causes all the updates made by the transaction to be discarded. |
| |
| ## <a id="topic1__section4"></a>Parameters |
| |
| <dt>WORK |
| TRANSACTION </dt> |
| <dd>Optional key words. They have no effect.</dd> |
| |
| ## <a id="topic1__section5"></a>Notes |
| |
| Use `COMMIT` to successfully end the current transaction. |
| |
| Issuing `ROLLBACK` when not inside a transaction does no harm, but it will provoke a warning message. |
| |
| ## <a id="topic1__section6"></a>Examples |
| |
| To discard all changes made in the current transaction: |
| |
| ``` sql |
| ROLLBACK; |
| ``` |
| |
| ## <a id="topic1__section7"></a>Compatibility |
| |
| The SQL standard only specifies the two forms `ROLLBACK` and `ROLLBACK WORK`. Otherwise, this command is fully conforming. |
| |
| ## <a id="topic1__section8"></a>See Also |
| |
| [BEGIN](BEGIN.html), [COMMIT](COMMIT.html), [SAVEPOINT](SAVEPOINT.html), [ROLLBACK TO SAVEPOINT](ROLLBACK-TO-SAVEPOINT.html) |