Outdated Version

You are viewing an older version of this section. View current production version.

ROLLBACK

Rolls back the open transaction if one exists.

Syntax

ROLLBACK [ WORK ] [ AND [ NO ] CHAIN ] [ [ NO ] RELEASE ]

Remarks

  • [ AND [ NO ] CHAIN ] and [ [ NO ] RELEASE ] are ignored as these options are not currently supported by MemSQL.
  • This command must be run on the master aggregator or a child aggregator node (see Node Requirements for MemSQL Commands.
  • If the transaction is successful, then execute the COMMIT command to commit the changes.

Example

For this example, consider the following Employee table:

ID Name
30 Jim
20 Rob
40 Rick
BEGIN;
UPDATE Employee SET Name = "John" WHERE ID = 300;
****
Query OK, 0 rows affected (0.00 sec)
Rows matched: 0  Changed: 0  Warnings: 0

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

SELECT * FROM Employee;
****
+------+-------+
| ID   | Name  |
+------+-------+
|   30 | Jim   |
|   20 | Rob   |
|   40 | Rick  |
+------+-------+

Run ROLLBACK since there were no matching results for the ID and the UPDATE was not successful.

ROLLBACK;

Note: Before the user runs COMMIT or ROLLBACK, only that user can see the updates made after the BEGIN statement was run.