txid_current_if_assigned()

一个返回当前事务 ID(如果已分配)的函数
此条目与 PostgreSQL 中一个已弃用的功能相关,该功能可能在将来的版本中被取消支持。

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

txid_current_if_assigned() 添加于 PostgreSQL 8.3

用法

txid_current_if_assigned () → bigint

txid_current_if_assigned() 返回当前事务 ID,类型为 bigint。请注意,在当前事务中执行非读取查询之前,不会分配新的事务 ID。

PostgreSQL 13 中引入 xid8 数据类型之后,此函数已弃用,并被 pg_current_xact_id_if_assigned() 取代。

变更历史

示例

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

postgres=# BEGIN;
BEGIN

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

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

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

Time: 0.986 ms
postgres=*# INSERT INTO foo VALUES (1);
INSERT 0 1

postgres=*# SELECT txid_current_if_assigned();
 txid_current_if_assigned 
--------------------------
                      742
(1 row)

类别

已弃用系统函数事务

另请参阅

pg_current_xact_id_if_assigned()txid_current()

反馈

提交有关 "txid_current_if_assigned()" 的任何评论、建议或更正 此处.