postgresql 插件 之 pg_variables 插件

postgresql 插件 之 pg_variables 插件

pg_variables 插件

地址: https://github.com/postgrespro/pg_variables

介绍:

pg_variables是一个当前用户会话级别的插件,相当于当前连接用户的全局变量,可以通过pgv_set设置变量,只要当前用户不退出连接,其他的地方就可以用pgv_get获取到通过pgv_set设置内容的值。在特定的场景下还是有些用处的。 默认的情况下,全量的值是事务无关的,只要设置了就有值,但是也可以将pgv_set的最后一个值,默认是非事务相关的,设置为true,这样,在事务中使用完后,这些变量将不存在了。 例如

SELECT pgv_set('vars', 'int1', 101);
BEGIN;
SELECT pgv_set('vars', 'int2', 102);
ROLLBACK;

SELECT * FROM pgv_list() order by package, name;
 package | name | is_transactional
---------+------+------------------
 vars    | int1 | f
 vars    | int2 | f

如果是事务相关的,如

BEGIN;
SELECT pgv_set('vars', 'trans_int', 101, true);
SAVEPOINT sp1;
SELECT pgv_set('vars', 'trans_int', 102, true);
ROLLBACK TO sp1;
COMMIT;
SELECT pgv_get('vars', 'trans_int', NULL::int);
 pgv_get
---------
     101

安装:

$ cd pg_variables
$ make USE_PGXS=1
$ sudo make USE_PGXS=1 install
$ make USE_PGXS=1 installcheck
$ psql DB -c "CREATE EXTENSION pg_variables;"

更多详情,参一下官方地址就可以明白了。

转载于:https://my.oschina.net/lvhongqing/blog/2998081

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值