La vue routines contient toutes les fonctions de la base de données courante. Seules sont affichées les fonctions auxquelles l'utilisateur courant a accès (qu'il en soit le propriétaire ou dispose de de privilèges).
Tableau 36.38. Colonnes de routines
Nom | Type de données | Description |
---|---|---|
specific_catalog | sql_identifier | Nom de la base de données qui contient la fonction (toujours la base de données courante) |
specific_schema | sql_identifier | Nom du schéma qui contient la fonction |
specific_name | sql_identifier | Le « nom spécifique » de la fonction. Ce nom identifie de façon unique la fonction dans le schéma, même si le nom réel de la fonction est surchargé. Le format du nom spécifique n'est pas défini, il ne devrait être utilisé que dans un but de comparaison avec d'autres instances de noms spécifiques de routines. |
routine_catalog | sql_identifier | Nom de la base de données qui contient la fonction (toujours la base de données courante) |
routine_schema | sql_identifier | Nom du schéma qui contient la fonction |
routine_name | sql_identifier | Nom de la fonction (peut être dupliqué en cas de surcharge) |
routine_type | character_data | Toujours FUNCTION (dans le futur, il pourrait y avoir d'autres types de routines) |
module_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
module_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
module_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
udt_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
udt_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
udt_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
data_type | character_data | Type de données de retour de la fonction s'il est interne, ARRAY s'il s'agit d'un tableau (dans ce cas, voir la vue element_types), sinon USER-DEFINED (dans ce cas, le type est identifié dans type_udt_name et dispose de colonnes associées). |
character_maximum_length | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
character_octet_length | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
character_set_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
character_set_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
character_set_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
collation_catalog | sql_identifier | Toujours NULL car cette information n'est pas appliquée pour configurer les types de données dans PostgreSQL™ |
collation_schema | sql_identifier | Toujours NULL car cette information n'est pas appliquée pour configurer les types de données dans PostgreSQL™ |
collation_name | sql_identifier | Toujours NULL car cette information n'est pas appliquée pour configurer les types de données dans PostgreSQL™ |
numeric_precision | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
numeric_precision_radix | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
numeric_scale | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
datetime_precision | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
interval_type | character_data | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
interval_precision | cardinal_number | Toujours NULL car cette information n'est pas appliquée aux types de données renvoyées sous PostgreSQL™ |
type_udt_catalog | sql_identifier | Nom de la base de données dans laquelle est défini le type de données de retour de la fonction (toujours la base de données courante) |
type_udt_schema | sql_identifier | Nom du schéma dans lequel est défini le type de données de retour de la fonction |
type_udt_name | sql_identifier | Nom du type de données de retour de la fonction |
scope_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
scope_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
scope_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
maximum_cardinality | cardinal_number | Toujours NULL car il n'y a pas de limite maximale à la cardinalité des tableaux dans PostgreSQL™ |
dtd_identifier | sql_identifier | Un identifiant du descripteur de type de données du type de données retour, unique parmi les descripteurs de type de données de la fonction. Ceci est principalement utile pour la jointure avec d'autres instances de tels identifiants (le format spécifique de l'identifiant n'est pas défini et il n'est pas certain qu'il restera identique dans les versions futures). |
routine_body | character_data | Si la fonction est une fonction SQL, alors SQL, sinon EXTERNAL. |
routine_definition | character_data | Le texte source de la fonction (NULL si la fonction n'appartient pas à un rôle actif). (Le standard SQL précise que cette colonne n'est applicable que si routine_body est SQL, mais sous PostgreSQL™ ce champ contient tout texte source précisé à la création de la fonction.) |
external_name | character_data | Si la fonction est une fonction C, le nom externe (link symbol) de la fonction ; sinon NULL. (Il s'agit de la même valeur que celle affichée dans routine_definition). |
external_language | character_data | Le langage d'écriture de la fonction |
parameter_style | character_data | Toujours GENERAL (le standard SQL définit d'autres styles de paramètres qui ne sont pas disponibles avec PostgreSQL™). |
is_deterministic | yes_or_no | Si la fonction est déclarée immuable (déterministe dans le standard SQL), alors YES, sinon NO. (Les autres niveaux de volatilité disponibles dans PostgreSQL™ ne peuvent être récupérés via le schéma d'informations). |
sql_data_access | character_data | Toujours MODIFIES, ce qui signifie que la fonction peut modifier les données SQL. Cette information n'est pas utile sous PostgreSQL™. |
is_null_call | yes_or_no | Si la fonction renvoie automatiquement NULL si un de ces arguments est NULL, alors YES, sinon NO. |
sql_path | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
schema_level_routine | yes_or_no | Toujours YES. (L'opposé serait une méthode d'un type utilisateur, fonctionnalité non disponible dans PostgreSQL™). |
max_dynamic_result_sets | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
is_user_defined_cast | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
is_implicitly_invocable | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
security_type | character_data | Si la fonction est exécutée avec les droits de l'utilisateur courant, alors INVOKER. Si la fonction est exécutée avec les droits de l'utilisateur l'ayant définie, alors DEFINER. |
to_sql_specific_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
to_sql_specific_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
to_sql_specific_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
as_locator | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™. |
created | time_stamp | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
last_altered | time_stamp | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
new_savepoint_level | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
is_udt_dependent | yes_or_no | Actuellement toujours NO. YES s'applique à une fonctionnalité non disponible dans PostgreSQL™. |
result_cast_from_data_type | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_as_locator | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_char_max_length | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_char_octet_length | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_char_set_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_char_set_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_char_set_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_collation_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_collation_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_collation_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_numeric_precision | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_numeric_precision_radix | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_numeric_scale | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_datetime_precision | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_interval_type | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_interval_precision | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_type_udt_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_type_udt_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_type_udt_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_scope_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_scope_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_scope_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_maximum_cardinality | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
result_cast_dtd_identifier | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |