开发快照。 PostgreSQL 20devel 尚未正式发布,内容仍可能变化。
COMMIT PREPARED
COMMIT PREPARED — 提交一个先前为两阶段提交而预备的事务
大纲
COMMIT PREPARED transaction_id
描述
COMMIT PREPARED 提交一个处于预备状态的事务。
参数
transaction_id要提交的事务的事务标识符。
注解
要提交预备事务,执行者必须是最初执行该事务的同一用户,或者是超级用户;但不必处在执行该事务的同一会话中。
这个命令不能在事务块内执行。该预备事务会被立即提交。
当前所有处于预备状态的事务都列在
pg_prepared_xacts
系统视图中。
示例
提交事务标识符为 foobar 的事务:
COMMIT PREPARED 'foobar';
兼容性
COMMIT PREPARED 是
PostgreSQL 扩展。它旨在供外部事务管理系统使用,其中有些系统已被标准覆盖(例如 X/Open XA),但这些系统的 SQL 侧并未标准化。