@@ -15307,14 +15307,6 @@ SELECT pg_type_is_visible('myschema.widget'::regtype);
1530715307 <primary>format_type</primary>
1530815308 </indexterm>
1530915309
15310- <indexterm>
15311- <primary>pg_describe_object</primary>
15312- </indexterm>
15313-
15314- <indexterm>
15315- <primary>pg_identify_object</primary>
15316- </indexterm>
15317-
1531815310 <indexterm>
1531915311 <primary>pg_get_constraintdef</primary>
1532015312 </indexterm>
@@ -15429,16 +15421,6 @@ SELECT pg_type_is_visible('myschema.widget'::regtype);
1542915421 <entry><type>text</type></entry>
1543015422 <entry>get SQL name of a data type</entry>
1543115423 </row>
15432- <row>
15433- <entry><literal><function>pg_describe_object(<parameter>catalog_id</parameter>, <parameter>object_id</parameter>, <parameter>object_sub_id</parameter>)</function></literal></entry>
15434- <entry><type>text</type></entry>
15435- <entry>get description of a database object</entry>
15436- </row>
15437- <row>
15438- <entry><literal><function>pg_identify_object(<parameter>catalog_id</parameter> <type>oid</>, <parameter>object_id</parameter> <type>oid</>, <parameter>object_sub_id</parameter> <type>integer</>)</function></literal></entry>
15439- <entry><parameter>type</> <type>text</>, <parameter>schema</> <type>text</>, <parameter>name</> <type>text</>, <parameter>identity</> <type>text</></entry>
15440- <entry>get identity of a database object</entry>
15441- </row>
1544215424 <row>
1544315425 <entry><literal><function>pg_get_constraintdef(<parameter>constraint_oid</parameter>)</function></literal></entry>
1544415426 <entry><type>text</type></entry>
@@ -15707,31 +15689,6 @@ SELECT pg_type_is_visible('myschema.widget'::regtype);
1570715689 <structname>pg_class</> catalogs.
1570815690 </para>
1570915691
15710- <para>
15711- <function>pg_describe_object</function> returns a textual description of a database
15712- object specified by catalog OID, object OID and a (possibly zero) sub-object ID.
15713- This description is intended to be human-readable, and might be translated,
15714- depending on server configuration.
15715- This is useful to determine the identity of an object as stored in the
15716- <structname>pg_depend</structname> catalog.
15717- </para>
15718-
15719- <para>
15720- <function>pg_identify_object</function> returns a row containing enough information
15721- to uniquely identify the database object specified by catalog OID, object OID and a
15722- (possibly zero) sub-object ID. This information is intended to be machine-readable,
15723- and is never translated.
15724- <parameter>type</> identifies the type of database object;
15725- <parameter>schema</> is the schema name that the object belongs in, or
15726- <literal>NULL</> for object types that do not belong to schemas;
15727- <parameter>name</> is the name of the object, quoted if necessary, only
15728- present if it can be used (alongside schema name, if pertinent) as a unique
15729- identifier of the object, otherwise <literal>NULL</>;
15730- <parameter>identity</> is the complete object identity, with the precise format
15731- depending on object type, and each part within the format being
15732- schema-qualified and quoted as necessary.
15733- </para>
15734-
1573515692 <para>
1573615693 <function>pg_typeof</function> returns the OID of the data type of the
1573715694 value that is passed to it. This can be helpful for troubleshooting or
@@ -15790,6 +15747,112 @@ SELECT collation for ('foo' COLLATE "de_DE");
1579015747 the given name matches multiple objects).
1579115748 </para>
1579215749
15750+ <indexterm>
15751+ <primary>pg_describe_object</primary>
15752+ </indexterm>
15753+
15754+ <indexterm>
15755+ <primary>pg_identify_object</primary>
15756+ </indexterm>
15757+
15758+ <indexterm>
15759+ <primary>pg_identify_object_as_address</primary>
15760+ </indexterm>
15761+
15762+ <indexterm>
15763+ <primary>pg_get_object_address</primary>
15764+ </indexterm>
15765+
15766+ <para>
15767+ <xref linkend="functions-info-object-table"> lists functions related to
15768+ database object identification and addressing.
15769+ </para>
15770+
15771+ <table id="functions-info-object-table">
15772+ <title>Object Information and Addressing Functions</title>
15773+ <tgroup cols="3">
15774+ <thead>
15775+ <row><entry>Name</entry> <entry>Return Type</entry> <entry>Description</entry></row>
15776+ </thead>
15777+
15778+ <tbody>
15779+ <row>
15780+ <entry><literal><function>pg_describe_object(<parameter>catalog_id</parameter>, <parameter>object_id</parameter>, <parameter>object_sub_id</parameter>)</function></literal></entry>
15781+ <entry><type>text</type></entry>
15782+ <entry>get description of a database object</entry>
15783+ </row>
15784+ <row>
15785+ <entry><literal><function>pg_identify_object(<parameter>catalog_id</parameter> <type>oid</>, <parameter>object_id</parameter> <type>oid</>, <parameter>object_sub_id</parameter> <type>integer</>)</function></literal></entry>
15786+ <entry><parameter>type</> <type>text</>, <parameter>schema</> <type>text</>, <parameter>name</> <type>text</>, <parameter>identity</> <type>text</></entry>
15787+ <entry>get identity of a database object</entry>
15788+ </row>
15789+ <row>
15790+ <entry><literal><function>pg_identify_object_as_address(<parameter>catalog_id</parameter> <type>oid</>, <parameter>object_id</parameter> <type>oid</>, <parameter>object_sub_id</parameter> <type>integer</>)</function></literal></entry>
15791+ <entry><parameter>type</> <type>text</>, <parameter>name</> <type>text[]</>, <parameter>args</> <type>text[]</></entry>
15792+ <entry>get external representation of a database object's address</entry>
15793+ </row>
15794+ <row>
15795+ <entry><literal><function>pg_get_object_address(<parameter>type</parameter> <type>text</>, <parameter>name</parameter> <type>text[]</>, <parameter>args</parameter> <type>text[]</>)</function></literal></entry>
15796+ <entry><parameter>catalog_id</> <type>oid</>, <parameter>object_id</> <type>oid</>, <parameter>object_sub_id</> <type>int32</></entry>
15797+ <entry>get address of a database object, from its external representation</entry>
15798+ </row>
15799+ </tbody>
15800+ </tgroup>
15801+ </table>
15802+
15803+ <para>
15804+ <function>pg_describe_object</function> returns a textual description of a database
15805+ object specified by catalog OID, object OID and a (possibly zero) sub-object ID.
15806+ This description is intended to be human-readable, and might be translated,
15807+ depending on server configuration.
15808+ This is useful to determine the identity of an object as stored in the
15809+ <structname>pg_depend</structname> catalog.
15810+ </para>
15811+
15812+ <para>
15813+ <function>pg_identify_object</function> returns a row containing enough information
15814+ to uniquely identify the database object specified by catalog OID, object OID and a
15815+ (possibly zero) sub-object ID. This information is intended to be machine-readable,
15816+ and is never translated.
15817+ <parameter>type</> identifies the type of database object;
15818+ <parameter>schema</> is the schema name that the object belongs in, or
15819+ <literal>NULL</> for object types that do not belong to schemas;
15820+ <parameter>name</> is the name of the object, quoted if necessary, only
15821+ present if it can be used (alongside schema name, if pertinent) as a unique
15822+ identifier of the object, otherwise <literal>NULL</>;
15823+ <parameter>identity</> is the complete object identity, with the precise format
15824+ depending on object type, and each part within the format being
15825+ schema-qualified and quoted as necessary.
15826+ </para>
15827+
15828+ <para>
15829+ <function>pg_identify_object_as_address</function> returns a row containing
15830+ enough information to uniquely identify the database object specified by
15831+ catalog OID, object OID and a (possibly zero) sub-object ID. The returned
15832+ information is independent of the current server, that is, it could be used
15833+ to identify an identically named object in another server.
15834+ <parameter>type</> identifies the type of database object;
15835+ <parameter>name</> and <parameter>args</> are text arrays that together
15836+ form a reference to the object. These three columns can be passed to
15837+ <function>pg_get_object_address</> to obtain the internal address
15838+ of the object.
15839+ This function is the inverse of <function>pg_get_object_address</function>.
15840+ </para>
15841+
15842+ <para>
15843+ <function>pg_get_object_address</function> returns a row containing enough
15844+ information to uniquely identify the database object specified by its
15845+ type and object name and argument arrays. The returned values are the
15846+ ones that would be used in system catalogs such as <structname>pg_depend</>
15847+ and can be passed to other system functions such as
15848+ <function>pg_identify_object</> or <function>pg_describe_object</>.
15849+ <parameter>catalog_id</> is the OID of the system catalog containing the
15850+ object;
15851+ <parameter>object_id</> is the OID of the object itself, and
15852+ <parameter>object_sub_id</> is the object sub-ID, or zero if none.
15853+ This function is the inverse of <function>pg_identify_object_as_address</function>.
15854+ </para>
15855+
1579315856 <indexterm>
1579415857 <primary>col_description</primary>
1579515858 </indexterm>
0 commit comments