COMMIT
是用于提交当前事务的事务命令。
COMMIT
一直存在于 PostgreSQL 中。
变更历史
- PostgreSQL 12
- 添加了
[ AND [ NO ] CHAIN ]
语法(提交 280a408b)
- 添加了
示例
COMMIT
的基本执行示例
postgres=# BEGIN; BEGIN postgres=*# SELECT 1; ?column? ---------- 1 (1 row) postgres=*# COMMIT; COMMIT
如果在已中止的事务上执行 COMMIT
,它将被隐式转换为 ROLLBACK
。
postgres=# BEGIN; BEGIN postgres=*# SELECT error; ERROR: column "error" does not exist LINE 1: SELECT error; ^ postgres=!# COMMIT; ROLLBACK
与 AND CHAIN
语法一起使用(PostgreSQL 12 及更高版本)
postgres=# BEGIN; BEGIN postgres=*# SELECT 1; ?column? ---------- 1 (1 row) postgres=*# COMMIT AND CHAIN; COMMIT postgres=*# SELECT 2; ?column? ---------- 2 (1 row)
postgres=*# COMMIT; COMMIT
END
是 COMMIT
的别名。
postgres=# BEGIN; BEGIN postgres=*# SELECT 1; ?column? ---------- 1 (1 row) postgres=*# END; COMMIT
参考资料
- PostgreSQL 文档: COMMIT