在另一个question中,有人询问如何使用SELECT查询查询postgresql运行时参数(例如SHOW search_path;
)。在答案中,建议使用
SELECT * FROM pg_settings WHERE name = 'search_path';
这很好用,但是如何在扩展中定义的自定义参数呢? (请参阅有关Customized Options)的文档。
示例:
SET abc.my_var = 1;
SHOW abc.my_var;
输出
1
但
SELECT * FROM pg_settings WHERE name = 'abc.my_var';
不返回任何行。是否有其他表/视图我可以使用SELECT语句查询我的自定义参数?
答案 0 :(得分:4)
使用函数current_setting()
SELECT current_setting('abc.my_var');
http://www.postgresql.org/docs/current/static/functions-admin.html#FUNCTIONS-ADMIN-SET