SQL Dialects Reference/Transactions
Transactions
editSQL version | Feature | Standard SQL:2011 |
DB2 | Firebird | Ingres | Linter | MSSQL | MySQL Vers. 5.x |
MonetDB | Oracle Vers. 11.x |
PostgreSQL | SQLite | Virtuoso |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
? | Start | START TRANSACTION [transaction characteristics] |
Implicit | SET TRANSACTION | ? | ? | BEGIN TRAN[SACTION] | BEGIN [WORK] START [TRANSACTION] |
START TRANSACTION BEGIN TRANSACTION |
Implicit | BEGIN [WORK|TRANSACTION] START TRANSACTION |
BEGIN [TRANSACTION] | Implicit |
? | Commit | COMMIT [WORK] | COMMIT [WORK] | COMMIT [WORK] | [EXEC SQL] COMMIT [WORK] | ? | COMMIT [WORK] COMMIT TRAN[SACTION] [transaction_name] |
COMMIT [WORK] | COMMIT [WORK] [AND [NO] CHAIN] | COMMIT [WORK] | COMMIT [WORK|TRANSACTION] | COMMIT [TRANSACTION] END [TRANSACTION] |
COMMIT WORK |
? | Rollback whole transaction | ROLLBACK [WORK] | ROLLBACK [WORK] | ROLLBACK [WORK] | [EXEC SQL] ROLLBACK [WORK] | ? | ROLLBACK [WORK] ROLLBACK TRAN[SACTION] |
ROLLBACK [WORK] | ROLLBACK [WORK] [AND [NO] CHAIN] | ROLLBACK [WORK] | ROLLBACK [WORK|TRANSACTION] | ROLLBACK [TRANSACTION] | ROLLBACK WORK |
? | Define a savepoint x, while inside a transaction | SAVEPOINT x | SAVEPOINT x ON ROLLBACK RETAIN CURSORS | SAVEPOINT x | SAVEPOINT x | ? | SAVE TRAN[SACTION] x | SAVEPOINT x | SAVEPOINT x | SAVEPOINT x | SAVEPOINT x | SAVEPOINT x | N/A |
? | Rollback to given savepoint x | ROLLBACK [WORK] TO SAVEPOINT x | ROLLBACK [WORK] TO SAVEPOINT x | ROLLBACK [WORK] TO [SAVEPOINT] x | [EXEC SQL] ROLLBACK [WORK] TO x | ? | ROLLBACK TRAN[SACTION] x | ROLLBACK [WORK] TO [SAVEPOINT] x | ROLLBACK [WORK] [AND [NO] CHAIN] TO SAVEPOINT x | ROLLBACK [WORK] TO [SAVEPOINT] x | ROLLBACK [WORK|TRANSACTION] TO [SAVEPOINT] x | ROLLBACK [TRANSACTION] TO [SAVEPOINT] x | N/A |
? | Release (forget) savepoint x | RELEASE SAVEPOINT x | RELEASE [TO] SAVEPOINT x | RELEASE SAVEPOINT x | N/A | ? | N/A | RELEASE SAVEPOINT x | RELEASE SAVEPOINT x | N/A | RELEASE [SAVEPOINT] x | RELEASE [SAVEPOINT] x | N/A |
? | Prepare transaction named id for two-phase commit | ? | ? | N/A | ? | ? | ? | ? | N/A | ? | PREPARE TRANSACTION id | N/A | ? |
? | Commit prepared transaction named id | ? | ? | N/A | ? | ? | ? | ? | N/A | ? | COMMIT PREPARED id | N/A | ? |
? | Rollback prepared transaction named id | ? | ? | N/A | ? | ? | ? | ? | N/A | ? | ROLLBACK PREPARED id | N/A | ? |
Start | Commit | Rollback | Prepare | Execute prepared | |
---|---|---|---|---|---|
Linter | Implicit
|
|
|
? | ? |