From 7ea8e491c801d2e39ef56c1fb79442ab26abfa93 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Thu, 5 Jun 2003 16:08:47 +0000 Subject: Information schema views about functions --- doc/src/sgml/information_schema.sgml | 742 ++++++++++++++++++++++++++++++++++- 1 file changed, 741 insertions(+), 1 deletion(-) (limited to 'doc/src') diff --git a/doc/src/sgml/information_schema.sgml b/doc/src/sgml/information_schema.sgml index f866cf72789..82760ecdc44 100644 --- a/doc/src/sgml/information_schema.sgml +++ b/doc/src/sgml/information_schema.sgml @@ -1,4 +1,4 @@ - + The Information Schema @@ -956,8 +956,246 @@ dtd_identifier sql_identifier + + A unique identifier of the data type of the domain (The + specific format of the identifier is not defined and not + guaranteed to remain the same in future versions.) + + + + + + + + + <literal>parameters</literal> + + + The view parameters contains information about + the parameters (arguments) all functions in the current database. + Only those functions are shown that the current user has access to + (by way of being the owner or having some privilege). + + + + <literal>parameters</literal> Columns + + + + + Name + Data Type + Description + + + + + + specific_catalog + sql_identifier + Name of the database containing the function (always the current database) + + + + specific_schema + sql_identifier + Name of the schema containing the function + + + + specific_name + sql_identifier + + The specific name of the function. See for more information. + + + + + ordinal_position + cardinal_number + + Ordinal position of the parameter in the argument list of the + function (count starts at 1) + + + + + parameter_mode + character_data + + Always IN, meaning input parameter (In the + future there might be other parameter modes.) + + + + + is_result + character_data + Applies to a feature not available in PostgreSQL + + + + as_locator + character_data + Applies to a feature not available in PostgreSQL + + + + parameter_name + sql_identifier + Always null, since PostgreSQL does not support named parameters + + + + data_type + character_data + Data type of the parameter + + + + character_maximum_length + cardinal_number + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + character_octet_length + cardinal_number + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + character_set_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + character_set_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + character_set_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + collation_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + collation_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + collation_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + numeric_precision + cardinal_number + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + numeric_precision_radix + cardinal_number + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + numeric_scale + cardinal_number + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + datetime_precision + cardinal_number + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + interval_type + character_data + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + interval_precision + character_data + Always null, since this information is not applied to parameter data types in PostgreSQL + + + + udt_catalog + sql_identifier + + Name of the database that the data type of the parameter is + defined in (always the current database) + + + + + udt_schema + sql_identifier + + Name of the schema that the data type of the parameter is + defined in + + + + + udt_name + sql_identifier + + Name of the data type of the parameter + + + + + scope_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + scope_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + scope_name + sql_identifier Applies to a feature not available in PostgreSQL + + + maximum_cardinality + cardinal_number + Applies to a feature not available in PostgreSQL + + + + dtd_identifier + sql_identifier + + A unique identifier of the data type of the parameter (The + specific format of the identifier is not defined and not + guaranteed to remain the same in future versions.) + +
@@ -1067,6 +1305,508 @@
+ + <literal>routine_privileges</literal> + + + The view routine_privileges identifies all + privileges granted on functions to the current user or by the + current user. There is one row for each combination of function, + grantor, and grantee. + + + + <literal>routine_privileges</literal> Columns + + + + + Name + Data Type + Description + + + + + + grantor + sql_identifier + Name of the user that granted the privileges + + + + grantee + sql_identifier + Name of the user that the privilege was granted to + + + + specific_catalog + sql_identifier + Name of the database containing the function (always the current database) + + + + specific_schema + sql_identifier + Name of the schema containing the function + + + + specific_name + sql_identifier + + The specific name of the function. See for more information. + + + + + routine_catalog + sql_identifier + Name of the database containing the function (always the current database) + + + + routine_schema + sql_identifier + Name of the schema containing the function + + + + routine_name + sql_identifier + Name of the function (may be duplicated in case of overloading) + + + + privilege_type + character_data + Always EXECUTE (the only privilege type for functions) + + + + is_grantable + character_data + YES if the privilege is grantable, NO if not + + + +
+
+ + + <literal>routines</literal> + + + The view routines contains all functions in the + current database. Only those functions are shown that the current + user has access to (by way of being the owner or having some + privilege). + + + + <literal>routines</literal> Columns + + + + + Name + Data Type + Description + + + + + + specific_catalog + sql_identifier + Name of the database containing the function (always the current database) + + + + specific_schema + sql_identifier + Name of the schema containing the function + + + + specific_name + sql_identifier + + The specific name 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. + + + + + routine_catalog + sql_identifier + Name of the database containing the function (always the current database) + + + + routine_schema + sql_identifier + Name of the schema containing the function + + + + routine_name + sql_identifier + Name of the function (may be duplicated in case of overloading) + + + + routine_type + character_data + + Always FUNCTION (In the future there might + be other types of routines.) + + + + + module_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + module_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + module_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + udt_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + udt_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + udt_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + data_type + character_data + Return data type of the function + + + + character_maximum_length + cardinal_number + Always null, since this information is not applied to return data types in PostgreSQL + + + + character_octet_length + cardinal_number + Always null, since this information is not applied to return data types in PostgreSQL + + + + character_set_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + character_set_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + character_set_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + collation_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + collation_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + collation_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + numeric_precision + cardinal_number + Always null, since this information is not applied to return data types in PostgreSQL + + + + numeric_precision_radix + cardinal_number + Always null, since this information is not applied to return data types in PostgreSQL + + + + numeric_scale + cardinal_number + Always null, since this information is not applied to return data types in PostgreSQL + + + + datetime_precision + cardinal_number + Always null, since this information is not applied to return data types in PostgreSQL + + + + interval_type + character_data + Always null, since this information is not applied to return data types in PostgreSQL + + + + interval_precision + character_data + Always null, since this information is not applied to return data types in PostgreSQL + + + + type_udt_catalog + sql_identifier + + Name of the database that the return data type of the function + is defined in (always the current database) + + + + + type_udt_schema + sql_identifier + + Name of the schema that the return data type of the function is + defined in + + + + + type_udt_name + sql_identifier + + Name of the return data type of the function + + + + + scope_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + scope_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + scope_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + maximum_cardinality + cardinal_number + Applies to a feature not available in PostgreSQL + + + + dtd_identifier + sql_identifier + + A unique identifier of the return data type of the function + (The specific format of the identifier is not defined and not + guaranteed to remain the same in future versions.) + + + + + routine_body + character_data + + If the function is an SQL function, then + SQL, else EXTERNAL. + + + + + routine_definition + character_data + + The source text of the function (null if the current user is + not the owner of the function). (According to the SQL + standard, this column is only applicable if + routine_body is SQL, but + in PostgreSQL it will contain whatever source text was + specified when the function was created.) + + + + + external_name + character_data + + If this function is a C function, then the external name (link + symbol) of the function; else null. (This works out to be the + same value that is shown in + routine_definition.) + + + + + external_language + character_data + The language the function is written in + + + + parameter_style + character_data + + Always GENERAL (The SQL standard defines + other parameter styles, which are not available in PostgreSQL.) + + + + + is_deterministic + character_data + + If the function is declared immutable (called deterministic in + the SQL standard), then YES, else + NO. (You cannot query the other volatility + levels available in PostgreSQL through the information schema.) + + + + + sql_data_access + character_data + + Always MODIFIES, meaning that the function + possibly modifies SQL data. This information is not useful for + PostgreSQL. + + + + + is_null_call + character_data + + If the function automatically returns null if any of its + arguments are null, then YES, else + NO. + + + + + sql_path + character_data + Applies to a feature not available in PostgreSQL + + + + schema_level_routine + character_data + + Always YES (The opposite would be a method + of a user-defined type, which is a feature not available in + PostgreSQL.) + + + + + max_dynamic_result_sets + cardinal_number + Applies to a feature not available in PostgreSQL + + + + is_user_defined_cast + character_data + Applies to a feature not available in PostgreSQL + + + + is_implicitly_invocable + character_data + Applies to a feature not available in PostgreSQL + + + + security_type + character_data + + If the function runs with the privileges of the current user, + then INVOKER, if the function runs with the + privileges of the user who defined it, then + DEFINER. + + + + + to_sql_specific_catalog + sql_identifier + Applies to a feature not available in PostgreSQL + + + + to_sql_specific_schema + sql_identifier + Applies to a feature not available in PostgreSQL + + + + to_sql_specific_name + sql_identifier + Applies to a feature not available in PostgreSQL + + + + as_locator + character_data + Applies to a feature not available in PostgreSQL + + + +
+
+ <literal>schemata</literal> -- cgit v1.2.3