postgre常用系统函数

名字返回类型描述
current_database()name当前数据库的名字
current_schema()name当前模式的名字
current_schemas(boolean)name[]搜索路径中的模式名字
current_username当前执行环境下的用户名
inet_client_addr()inet连接的远端地址
inet_client_port()int连接的远端端口
inet_server_addr()inet连接的本地地址
inet_server_port()int连接的本地端口
pg_my_temp_schema()oid会话的临时模式的 OID ,不存在则为 0
pg_is_other_temp_schema(oid)boolean是否为另一个会话的临时模式?
pg_postmaster_start_time()timestamp with time zone服务器启动时间
session_username会话用户名
username等价于 current_user
version()textPostgreSQL 版本信息

检查权限的函数

名字返回类型描述
has_database_privilege(user,database, privilege)boolean指定用户是否有访问数据库的权限
has_database_privilege(database,privilege)boolean当前用户是否有访问数据库的权限
has_function_privilege(user,function, privilege)boolean指定用户是否有访问函数的权限
has_function_privilege(function,privilege)boolean指定用户是否有访问函数的权限
has_language_privilege(user,language, privilege)boolean指定用户是否有访问语言的权限
has_language_privilege(language,privilege)boolean指定用户是否有访问语言的权限
has_schema_privilege(user,schema, privilege)boolean指定用户是否有访问模式的权限
has_schema_privilege(schema,privilege)boolean指定用户是否有访问模式的权限
has_table_privilege(user,table, privilege)boolean指定用户是否有访问表的权限
has_table_privilege(table,privilege)boolean指定用户是否有访问表的权限
has_tablespace_privilege(user,tablespace, privilege)boolean指定用户是否有访问表空间的权限
has_tablespace_privilege(tablespace,privilege)boolean指定用户是否有访问表空间的权限
pg_has_role(user,role, privilege)boolean指定用户是否有访问角色的权限
pg_has_role(role,privilege)boolean指定用户是否有访问角色的权限

系统表信息

名字返回类型描述
format_type(type_oid,typemod)text获取一个数据类型的 SQL 名称
pg_get_constraintdef(constraint_oid)text获取一个约束的定义
pg_get_constraintdef(constraint_oid,pretty_bool)text获取一个约束的定义
pg_get_expr(expr_text,relation_oid)text反编译一个表达式的内部形式,假设其中的任何 Var 都引用第二个参数指出的关系
pg_get_expr(expr_text,relation_oid, pretty_bool)text反编译一个表达式的内部形式,假设其中的任何 Var 都引用第二个参数指出的关系
pg_get_indexdef(index_oid)text为索引获取 CREATE INDEX 命令
pg_get_indexdef(index_oid,column_no, pretty_bool)text为索引获取 CREATE INDEX 命令,如果 column_no 不为零,则只获取一个索引字段的定义。
pg_get_ruledef(rule_oid)text为规则获取 CREATE RULE 命令
pg_get_ruledef(rule_oid,pretty_bool)text为规则获取 CREATE RULE 命令
pg_get_serial_sequence(table_name,column_name)text获取一个 serialbigserial 字段使用的序列名字
pg_get_triggerdef(trigger_oid)text为触发器获取 CREATE [ CONSTRAINT ] TRIGGER 命令
pg_get_userbyid(roleid)name获取给定 ID 的角色名
pg_get_viewdef(view_name)text为视图获取底层的 SELECT 命令(已废弃)
pg_get_viewdef(view_name,pretty_bool)text为视图获取底层的 SELECT 命令(已废弃)
pg_get_viewdef(view_oid)text为视图获取底层的 SELECT 命令
pg_get_viewdef(view_oid,pretty_bool)text为视图获取底层的 SELECT 命令
pg_tablespace_databases(tablespace_oid)setof oid获取在指定的表空间有元素的数据库 OID 集合

配置设置函数

名字返回类型描述
current_setting(setting_name)text当前的设置值
set_config(setting_name, new_value, is_local)text

服务器信号函数

名字返回类型描述
pg_cancel_backend(pidint)boolean取消一个后端的当前查询
pg_reload_conf()boolean导致所有服务器进程重新装载它们的配置文件
pg_rotate_logfile()boolean滚动服务器的日志文件

名字返回类型描述
pg_start_backup(labeltext)text开始执行在线备份
pg_stop_backup()text完成执行在线备份
pg_switch_xlog()text切换到一个新的事务日志文件
pg_current_xlog_location()text获取当前事务日志的写入位置
pg_current_xlog_insert_location()text获取当前事务日志的插入位置
pg_xlogfile_name_offset(locationtext)text, integer将事务日志的位置字符串转换为文件名并返回在文件中的字节偏移量
pg_xlogfile_name(locationtext)text将事务日志的位置字符串转换为文件名

数据库尺寸函数

名字返回类型描述
pg_column_size(any)int存储一个指定的数值需要的字节数(可能压缩过)
pg_database_size(oid)bigint指定 OID 代表的数据库使用的磁盘空间
pg_database_size(name)bigint指定名称的数据库使用的磁盘空间
pg_relation_size(oid)bigint指定 OID 代表的表或者索引所使用的磁盘空间
pg_relation_size(text)bigint指定名称的表或者索引使用的磁盘空间。表名字可以用模式名修饰。
pg_size_pretty(bigint)text把字节计算的尺寸转换成一个人类易读的尺寸。
pg_tablespace_size(oid)bigint指定 OID 代表的表空间使用的磁盘空间
pg_tablespace_size(name)bigint指定名字的表空间使用的磁盘空间
pg_total_relation_size(oid)bigint指定 OID 代表的表使用的磁盘空间,包括索引和压缩数据。
pg_total_relation_size(text)bigint指定名字的表所使用的全部磁盘空间,包括索引和压缩数据。表名字可以用模式名修饰。

文件通讯函数

名字返回类型描述
pg_ls_dir(dirnametext)setof text列出目录中的文件
pg_read_file(filenametext, offset bigint,length bigint)text返回一个文本文件的内容
pg_stat_file(filenametext)record返回一个文件的信息

锁函数

名字返回类型描述
pg_advisory_lock(keybigint)void获取排它咨询锁
pg_advisory_lock(key1int, key2 int)void获取排它咨询锁
pg_advisory_lock_shared(keybigint)void获取共享咨询锁
pg_advisory_lock_shared(key1int, key2 int)void获取共享咨询锁
pg_try_advisory_lock(keybigint)boolean尝试获取排它咨询锁
pg_try_advisory_lock(key1int, key2 int)boolean尝试获取排它咨询锁
pg_try_advisory_lock_shared(keybigint)boolean尝试获取共享咨询锁
pg_try_advisory_lock_shared(key1int, key2 int)boolean尝试获取共享咨询锁
pg_advisory_unlock(keybigint)boolean释放排它咨询锁
pg_advisory_unlock(key1int, key2 int)boolean释放排它咨询锁
pg_advisory_unlock_shared(keybigint)boolean释放共享咨询锁
pg_advisory_unlock_shared(key1int, key2 int)boolean释放共享咨询锁
pg_advisory_unlock_all()void释放当前会话持有的所有咨询锁


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值