32.26. routines

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 (soit parce qu'il en est le propriétaire, soit parce qu'il possède des droits dessus).

Tableau 32-24. Colonnes de routines

NomType de donnéesDescription
specific_catalogsql_identifierNom de la base de données contenant la fonction (toujours la base de données courante)
specific_schemasql_identifierNom du schéma contenant la fonction
specific_namesql_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 devrait seulement être utilisé pour le comparer à d'autres instances de noms de routines spécifiques.
routine_catalogsql_identifierNom de la base de données contenant la fonction (toujours la base de données courante)
routine_schemasql_identifierNom du schéma contenant la fonction
routine_namesql_identifierNom de la fonction (pourrait être dupliqué en cas de surchargement)
routine_typecharacter_data Toujours FUNCTION (dans le futur, il pourrait y avoir d'autres types de routines)
module_catalogsql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
module_schemasql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
module_namesql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
udt_catalogsql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
udt_schemasql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
udt_namesql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
data_typecharacter_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_lengthcardinal_numberToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées avec PostgreSQL
character_octet_lengthcardinal_numberToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées par PostgreSQL
character_set_catalogsql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
character_set_schemasql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
character_set_namesql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
collation_catalogsql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
collation_schemasql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
collation_namesql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
numeric_precisioncardinal_numberToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées par PostgreSQL
numeric_precision_radixcardinal_numberToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées par PostgreSQL
numeric_scalecardinal_numberToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées par PostgreSQL
datetime_precisioncardinal_numberToujours NULL, car cette information n'est pas appliquée aux aux types de données renvoyées par PostgreSQL
interval_typecharacter_dataToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées par PostgreSQL
interval_precisioncharacter_dataToujours NULL, car cette information n'est pas appliquée aux types de données renvoyées par PostgreSQL
type_udt_catalogsql_identifier Nom de la base de données où est défini le type de données en retour de la fonction (toujours la base de données courante)
type_udt_schemasql_identifier Nom du schéma où est défini le type de données en retour de la fonction
type_udt_namesql_identifier Nom du type de données en retour de la fonction
scope_catalogsql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
scope_schemasql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
scope_namesql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
maximum_cardinalitycardinal_numberToujours NULL, car les tableaux ont une cardinalité maximum illimitée dans PostgreSQL
dtd_identifiersql_identifier Un identifiant du descripteur de type de données du type de données en retour, unique parmi les descripteurs de type de données restant dans 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_bodycharacter_data Si la fonction est une fonction SQL, alors SQL, sinon EXTERNAL.
routine_definitioncharacter_data Le texte source de la fonction (NULL si l'utilisateur courant n'est pas le propriétaire de la fonction)... (suivant le standard SQL, cette colonne est seulement applicable si routine_body est SQL mais, avec PostgreSQL, il contiendra tout texte source qui a été spécifié à la création de la fonction).
external_namecharacter_data Si la fonction est une fonction C, alors le nom externe (link symbol) de la fonction ; sinon NULL (ceci fonctionne de telle façon qu'il s'agit de la même valeur montrée dans routine_definition).
external_languagecharacter_dataLe langage dans lequel est écrit la fonction
parameter_stylecharacter_data Toujours GENERAL (Le standard SQL définit d'autres styles de paramètres qui ne sont pas disponibles avec PostgreSQL.)
is_deterministiccharacter_data Si la fonction est déclarée immutable (appelée déterministe dans le standard SQL), alors YES, sinon NO. (Vous ne pouvez pas connaître les autres niveaux de volatilité disponible dans PostgreSQL via le schéma d'informations.)
sql_data_accesscharacter_data Toujours MODIFIES signifiant que la fonction peut modifier les données SQL. Cette information n'est pas utile pour PostgreSQL.
is_null_callcharacter_data Si la fonction renvoie automatiquement NULL si un de ces arguments est NULL, alors YES, sinon NO.
sql_pathcharacter_dataS'applique à une fonctionnalité non disponible dans PostgreSQL.
schema_level_routinecharacter_data Toujours YES (L'opposé serait une méthode d'un type défini par l'utilisateur, fonctionnalité non disponible dans PostgreSQL.)
max_dynamic_result_setscardinal_numberS'applique à une fonctionnalité non disponible dans PostgreSQL.
is_user_defined_castcharacter_dataS'applique à une fonctionnalité non disponible dans PostgreSQL.
is_implicitly_invocablecharacter_dataS'applique à une fonctionnalité non disponible dans PostgreSQL.
security_typecharacter_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éfini, alors DEFINER.
to_sql_specific_catalogsql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
to_sql_specific_schemasql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
to_sql_specific_namesql_identifierS'applique à une fonctionnalité non disponible dans PostgreSQL.
as_locatorcharacter_dataS'applique à une fonctionnalité non disponible dans PostgreSQL.