PostgreSQLLa base de données la plus sophistiquée au monde.

42.26. pg_pltemplate

Le catalogue pg_pltemplate stocke des informations modèles (« template ») pour les langages de procédures. Un modèle pour un langage permet la création de ce langage dans une base de données particulière avec une simple commande CREATE LANGUAGE, sans avoir besoin de spécifier les détails de l'implémentation.

Contrairement à la plupart des catalogues système, pg_pltemplate est partagé parmi toutes les bases de données d'un groupe : il n'existe qu'une seule copie de pg_pltemplate par groupe, et non pas une par base de données. Ceci fait que l'information est accessible de chaque base de données.

Tableau 42.26. Colonnes de pg_pltemplate

Nom Type Références Description
tmplname name   Nom du langage auquel est dédié ce modèle
tmpltrusted boolean   True s'il s'agit d'un langage de confiance
tmplhandler text   Nom de la fonction de gestion des appels
tmplvalidator text   Nom de la fonction validateur, ou NULL si aucune
tmpllibrary text   Chemin de la bibliothèque partagée qui implémente ce langage
tmplacl aclitem[]   Droits d'accès au modèle (actuellement inutilisé)

Il n'existe actuellement aucune commande qui manipule les modèles des langages de procédures ; pour modifier l'information intégrée, un superutilisateur doit modifier la table en utilisant les commandes ordinaires, INSERT, DELETE ou UPDATE. Il est probable qu'une future version de PostgreSQL™ proposera des commandes permettant de modifier les entrées d'une façon plus propre.

Une fois implémenté, le champ tmplacl fournira un contrôle des accès au modèle (c'est-à-dire le droit de créer un langage à partir de ce modèle), mais pas un contrôle des accès aux langages créés à partir de ce modèle.