current_setting()

返回当前配置参数值的函数

current_setting() 是一个系统函数,用于返回当前 配置参数 的值以及其他一些值。

current_setting() 函数是在 PostgreSQL 7.3 中添加的。

用法

current_setting ( setting_name text [, missing_ok boolean ] ) → text

SHOW 命令类似,current_setting() 返回当前 配置参数(以及其他一些参数)的值。但与 SHOW 不同,current_setting() 是一个普通函数,可以与其他 SQL 元素结合使用。此外,它还可以显示自定义变量,并且可以选择在指定的配置参数不存在时执行而不返回错误。

SHOW 一样,current_setting() 也可以通过伪参数 is_superuser 来显示当前用户是否为超级用户。

系统目录视图 pg_settings 也可以用于检索有关当前配置参数值的相关信息。

变更历史

示例

检索普通的 配置参数

postgres=# SELECT current_setting('port');
 current_setting 
-----------------
 5432
(1 row)

尝试检索不存在的配置参数

postgres=# SELECT current_setting('foo');
ERROR:  unrecognized configuration parameter "foo"

安全地尝试检索可能不存在的配置参数(PostgreSQL 9.6 及更高版本)

postgres=# SELECT current_setting('foo', true);
 current_setting 
-----------------
 
(1 row)

显示当前用户是否为超级用户

postgres=# SELECT current_setting('is_superuser');
 current_setting 
-----------------
 on
(1 row)

分类

配置, 系统函数

另请参阅

pg_settings, SHOW, set_config()

反馈

提交有关 "current_setting()" 的任何评论、建议或更正,请点击 此处