更新时间:2024-06-29 GMT+08:00

注释信息函数

col_description(table_oid, column_number)

描述:获取一个表字段的注释。

返回类型:text

备注:col_description返回一个表中字段的注释,通过表OID和字段号来声明。

示例:查询pg_class系统表获取表OID,查询INFORMATION_SCHEMA.COLUMNS系统视图获取column_number。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
SELECT COLUMN_NAME,ORDINAL_POSITION FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 't' AND COLUMN_NAME = 'a';
column_name | ordinal_position
-------------+------------------
a           |                1
(1 row)

SELECT oid FROM pg_class WHERE relname='t';
  oid
-------
 44020
(1 row)

SELECT col_description(44020,1);
    col_description
-----------------------
 This is a test table.
(1 row)

obj_description(object_oid, catalog_name)

描述:获取一个数据库对象的注释。

返回类型:text

备注:带有两个参数的obj_description返回一个数据库对象的注释,该对象是通过其OID和其所属的系统表名字声明。比如,obj_description(123456,'pg_class')将返回OID为123456的表的注释。只带一个参数的obj_description只要求对象OID。

obj_description不能用于表字段,因为字段没有自己的OID。

obj_description(object_oid)

描述:获取一个数据库对象的注释。

返回类型:text

shobj_description(object_oid, catalog_name)

描述:获取一个共享数据库对象的注释。

返回类型:text

备注:shobj_description和obj_description差不多,不同之处仅在于前者用于共享对象。一些系统表是通用于集群中所有数据库的全局表,因此这些表的注释也是全局存储的。