跳至內容

SQL 方言參考/事務

來自華夏公益教科書,開放的書籍,開放的世界

此頁面包含比較表,它們可能很大且複雜

雖然完全可以以完整狀態檢視它們,但建議安裝一個比較表擴充套件,它可以允許選擇特定列進行比較。

SQL 版本 功能 標準
SQL:2011
DB2 Firebird Ingres Linter MSSQL MySQL
Vers. 5.x
MonetDB Oracle
Vers. 11.x
PostgreSQL SQLite Virtuoso
? 開始 START TRANSACTION
[事務特性]
隱式 SET TRANSACTION ? ? BEGIN TRAN[SACTION] BEGIN [WORK]
START [TRANSACTION]
START TRANSACTION
BEGIN TRANSACTION
隱式 BEGIN [WORK|TRANSACTION]
START TRANSACTION
BEGIN [TRANSACTION] 隱式
? 提交 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 [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
? 在事務中定義一個儲存點x 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
? 回滾到給定的儲存點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
? 釋放(忘記)儲存點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
? 為兩階段提交準備名為id的事務 ? ? N/A ? ? ? ? N/A ? PREPARE TRANSACTION id N/A ?
? 提交名為id的已準備事務 ? ? N/A ? ? ? ? N/A ? COMMIT PREPARED id N/A ?
? 回滾名為id的已準備事務 ? ? N/A ? ? ? ? N/A ? ROLLBACK PREPARED id N/A ?
開始 提交 回滾 準備 執行已準備好的
Linter 隱式
  • 執行一個COMMIT語句
  • 執行任何 DDL 語句
  • 在 AUTOCOMMIT 模式下執行任何語句
  • 執行一個ROLLBACK語句
  • 使用者程序異常終止或在沒有COMMIT/ROLLBACK的情況下斷開連線
? ?
華夏公益教科書