pg_current_xact_id_if_assigned()

如果已分配,则返回当前事务 ID 的函数

pg_current_xact_id_if_assigned() 是一个系统函数,如果已分配,则返回当前事务 ID。

pg_current_xact_id_if_assigned()PostgreSQL 13 中添加。

用法

pg_current_xact_id_if_assigned () → xid8

pg_current_xact_id_if_assigned() 将当前事务 ID 作为 xid8 返回。请注意,在当前事务中执行非读取查询之前,不会分配新的事务 ID。

pg_current_xact_id_if_assigned() 替换了 txid_current_if_assigned()

变更历史

示例

pg_current_xact_id_if_assigned() 的基本用法示例 - 事务在对数据库进行更改之前不会拥有事务 ID

postgres=# BEGIN;
BEGIN

postgres=*# SELECT pg_current_xact_id_if_assigned();
 pg_current_xact_id_if_assigned 
--------------------------------
                               
(1 row)

postgres=*# SELECT 1;
 ?column? 
----------
        1
(1 row)

postgres=*# SELECT pg_current_xact_id_if_assigned();
 pg_current_xact_id_if_assigned 
--------------------------------
                               
(1 row)

postgres=*# INSERT INTO foo VALUES (1); 
INSERT 0 1

postgres=*# SELECT pg_current_xact_id_if_assigned();
 pg_current_xact_id_if_assigned 
--------------------------------
                            764
(1 row)

分类

系统函数事务

另请参阅

pg_current_xact_id()pg_xact_status()

反馈

提交任何关于 "pg_current_xact_id_if_assigned()" 的评论、建议或更正 在此处