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
