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