每个函数执行检查数据库对象类型的可见性。对于函数和操作符,如果在前面的搜索路径中没有相同的对象名称和参数的数据类型,则此对象是可见的。对于操作符类,则要同时考虑名称和相关索引的访问方法。
所有这些函数都需要使用OID来标识要需要检查的对象。如果用户想通过名称测试对象,则使用OID别名类型(regclass、regtype、regprocedure、regoperator、regconfig或regdictionary)将会很方便。
比如,如果一个表所在的模式在搜索路径中,并且在前面的搜索路径中没有同名的表,则这个表是可见的。它等效于表可以不带明确模式修饰进行引用。比如,要列出所有可见表的名称:
gbase=# SELECT relname FROM pg_class WHERE pg_table_is_visible(oid);
relname
------------------------------------------------
pg_type
gs_client_global_keys_args
abc
pg_subscription_oid_index
pg_subscription_subname_index
pgxc_prepared_xacts
pg_shadow
pg_roles
pg_user
pg_group
pg_rules
pg_authid
gs_labels
pg_rlspolicies
gs_auditing_access
……
- pg_collation_is_visible(collation_oid)
描述:该排序是否在搜索路径中可见。
返回类型:Boolean
- pg_conversion_is_visible(conversion_oid)
描述:该转换是否在搜索路径中可见。
返回类型:Boolean
- pg_function_is_visible(function_oid)
描述:该函数是否在搜索路径中可见。
返回类型:Boolean
- pg_opclass_is_visible(opclass_oid)
描述:该操作符类是否在搜索路径中可见。
返回类型:Boolean
- pg_operator_is_visible(operator_oid)
描述:该操作符是否在搜索路径中可见。
返回类型:Boolean
- pg_opfamily_is_visible(opclass_oid)
描述:该操作符族是否在搜索路径中可见。
返回类型:Boolean
- pg_table_is_visible(table_oid)
描述:该表是否在搜索路径中可见。
返回类型:Boolean
- pg_ts_config_is_visible(config_oid)
描述:该文本检索配置是否在搜索路径中可见。
返回类型:Boolean
- pg_ts_dict_is_visible(dict_oid)
描述:该文本检索词典是否在搜索路径中可见。
返回类型:Boolean
- pg_ts_parser_is_visible(parser_oid)
描述:该文本搜索解析是否在搜索路径中可见。
返回类型:Boolean
- pg_ts_template_is_visible(template_oid)
描述:该文本检索模板是否在搜索路径中可见。
返回类型:Boolean
- pg_type_is_visible(type_oid)
描述:该类型(或域)是否在搜索路径中可见。
返回类型:Boolean