---
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)
