会话信息函数
current_catalog
描述:当前数据库的名字(在标准SQL中称“catalog”),与current_database()同义。
返回值类型:name
示例:
1 2 3 4 5 |
SELECT current_catalog; current_database ------------------ gaussdb (1 row) |
current_database()
描述:当前数据库的名字。
返回值类型:name
示例:
1 2 3 4 5 |
SELECT current_database(); current_database ------------------ gaussdb (1 row) |
current_query()
描述:由客户端提交的当前执行语句(可能包含多个声明)。
返回值类型:text
示例:
1 2 3 4 5 |
SELECT current_query(); current_query ------------------------- SELECT current_query(); (1 row) |
current_schema[()]
描述:current_schema返回在搜索路径中第一个顺位有效的模式名。(如果搜索路径为空则返回NULL,没有有效的模式名也返回NULL)。如果创建表或者其他命名对象时没有声明目标模式,则将使用这些对象的模式。
返回值类型:name
示例:
1 2 3 4 5 |
SELECT current_schema(); current_schema ---------------- public (1 row) |
current_schemas(boolean)
描述:current_schemas(boolean)返回搜索路径中所有模式名字的数组。布尔选项决定像pg_catalog这样隐含包含的系统模式是否包含在返回的搜索路径中。
返回值类型:name[]
示例:
1 2 3 4 5 |
SELECT current_schemas(true); current_schemas --------------------- {pg_catalog,public} (1 row) |
搜索路径可以通过运行时设置更改。命令是:
1
|
SET search_path TO schema [, schema, ...] |
current_user
描述:当前执行环境下的用户名。current_user是用于权限检查的用户标识。通常用来表示会话用户,但是可以通过SET ROLE改变这个设置。在函数执行的过程中随着属性SECURITY DEFINER的改变,其值也会改变。
返回值类型:name
示例:
1 2 3 4 5 |
SELECT current_user; current_user -------------- dbadmin (1 row) |
inet_client_addr()
描述:显示当前连接的客户端IP信息。
- 此函数只有在远程连接模式下有效。
- 如果是通过本地连接,使用此接口显示为空。
返回值类型:inet
示例:
1 2 3 4 5 |
SELECT inet_client_addr(); inet_client_addr ------------------ 10.10.0.50 (1 row) |
inet_client_port()
描述:显示当前连接的客户端的端口号。
此函数只有在远程连接模式下有效。
返回值类型:integer
示例:
1 2 3 4 5 |
SELECT inet_client_port(); inet_client_port ------------------ 33143 (1 row) |
inet_server_addr()
描述:显示当前服务器的IP信息。
- 此函数只有在远程连接模式下有效。
- 如果是通过本地连接,使用此接口显示为空。
返回值类型:inet
示例:
1 2 3 4 5 |
SELECT inet_server_addr(); inet_server_addr ------------------ 10.10.0.13 (1 row) |
inet_server_port()
描述:显示当前服务器的端口。如果是通过Unix-domain socket连接的,则所有这些函数都返回NULL。
此函数只有在远程连接模式下有效。
返回值类型:integer
示例:
1 2 3 4 5 |
SELECT inet_server_port(); inet_server_port ------------------ 8000 (1 row) |
pg_backend_pid()
描述:当前会话连接的服务进程的进程ID。
返回值类型:integer
示例:
1 2 3 4 5 |
SELECT pg_backend_pid(); pg_backend_pid ----------------- 140229352617744 (1 row) |
pg_conf_load_time()
描述:配置加载时间。pg_conf_load_time返回最后加载服务器配置文件的时间戳。
返回值类型:timestamp with time zone
示例:
1 2 3 4 5 |
SELECT pg_conf_load_time(); pg_conf_load_time ------------------------------ 2017-09-01 16:05:23.89868+08 (1 row) |
pg_my_temp_schema()
描述:pg_my_temp_schema返回当前会话中临时模式的OID,如果不存在(没有创建临时表)的话则返回0。如果给定的OID是其它会话中临时模式的OID,pg_is_other_temp_schema则返回true。
返回值类型:oid
示例:
1 2 3 4 5 |
SELECT pg_my_temp_schema(); pg_my_temp_schema ------------------- 0 (1 row) |
pg_is_other_temp_schema(oid)
描述:是否为另一个会话的临时模式。
返回值类型:boolean
示例:
1 2 3 4 5 |
SELECT pg_is_other_temp_schema(25356); pg_is_other_temp_schema ------------------------- f (1 row) |
pg_postmaster_start_time()
描述:服务器启动时间。pg_postmaster_start_time返回服务器启动时的timestamp with time zone。
返回值类型:timestamp with time zone
示例:
1 2 3 4 5 |
SELECT pg_postmaster_start_time(); pg_postmaster_start_time ------------------------------ 2017-08-30 16:02:54.99854+08 (1 row) |
pg_trigger_depth()
描述:触发器的嵌套层次。
返回值类型:integer
示例:
1 2 3 4 5 |
SELECT pg_trigger_depth(); pg_trigger_depth ------------------ 0 (1 row) |
pgxc_version()
描述:Postgres-XC版本信息。
返回值类型:text
示例:
1 2 3 4 5 |
SELECT pgxc_version(); pgxc_version ------------------------------------------------------------------------------------------------------------- Postgres-XC 1.1 on x86_64-unknown-linux-gnu, based on PostgreSQL 9.2.4, compiled by g++ (GCC) 5.4.0, 64-bit (1 row) |
session_user
描述:会话用户名。session_user通常是连接当前数据库的初始用户,不过系统管理员可以用SET SESSION AUTHORIZATION修改这个设置。
返回值类型:name
示例:
1 2 3 4 5 |
SELECT session_user; session_user -------------- dbadmin (1 row) |
user
描述:等价于current_user。
返回值类型:name
示例:
1 2 3 4 5 |
SELECT user; current_user -------------- dbadmin (1 row) |
version()
描述:版本信息。version返回一个描述服务器版本信息的字符串。
返回值类型:text
示例:
1 2 3 4 5 |
SELECT version(); version --------------------------------------------------------------------------------------------------------------------------------------- PostgreSQL 9.2.4 gsql ((GaussDB 8.2.1 build 39137c2d) compiled at 2022-09-23 15:43:11 commit 3629 last mr 5138 release) on x86_64-unknown-linux-gnu, compiled by g++ (GCC) 5.4.0, 64-bit (1 row) |