<type>sql_identifier</type>
</para>
<para>
Name of the table that is used by the function
</para></entry>
</row>
</tbody>
</tgroup>
</table>
</sect1>
<sect1 id="infoschema-routines">
<title><literal>routines</literal></title>
<para>
The view <literal>routines</literal> contains all functions and procedures in the
current database. Only those functions and procedures are shown that the current
user has access to (by way of being the owner or having some
privilege).
</para>
<table>
<title><structname>routines</structname> Columns</title>
<tgroup cols="1">
<thead>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
Column Type
</para>
<para>
Description
</para></entry>
</row>
</thead>
<tbody>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>specific_catalog</structfield> <type>sql_identifier</type>
</para>
<para>
Name of the database containing the function (always the current database)
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>specific_schema</structfield> <type>sql_identifier</type>
</para>
<para>
Name of the schema containing the function
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>specific_name</structfield> <type>sql_identifier</type>
</para>
<para>
The <quote>specific name</quote> of the function. This is a
name that uniquely identifies the function in the schema, even
if the real name of the function is overloaded. The format of
the specific name is not defined, it should only be used to
compare it to other instances of specific routine names.
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>routine_catalog</structfield> <type>sql_identifier</type>
</para>
<para>
Name of the database containing the function (always the current database)
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>routine_schema</structfield> <type>sql_identifier</type>
</para>
<para>
Name of the schema containing the function
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>routine_name</structfield> <type>sql_identifier</type>
</para>
<para>
Name of the function (might be duplicated in case of overloading)
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>routine_type</structfield> <type>character_data</type>
</para>
<para>
<literal>FUNCTION</literal> for a
function, <literal>PROCEDURE</literal> for a procedure
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>module_catalog</structfield> <type>sql_identifier</type>
</para>
<para>
Applies to a feature not available in <productname>PostgreSQL</productname>
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>module_schema</structfield> <type>sql_identifier</type>
</para>
<para>
Applies to a feature not available in <productname>PostgreSQL</productname>
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>module_name</structfield> <type>sql_identifier</type>
</para>
<para>
Applies to a feature