43.26. pg_pltemplate
Le catalogue pg_pltemplate stocke les
informations modèles (« template ») des langages de procédures. Un modèle
de langage permet la création de ce langage dans une base de données
particulière à l'aide d'une simple commande
CREATE LANGUAGE
, sans qu'il soit
nécessaire de spécifier les détails de l'implantation.
Contrairement à la plupart des catalogues système, pg_pltemplate est partagé par toutes les bases de
données d'un cluster : il n'existe qu'une seule copie de pg_pltemplate par cluster, et non pas une par
base de données. L'information est de ce fait accessible à toute base
de données.
Tableau 43.26. Colonnes de pg_pltemplate
|
Nom
|
Type
|
Description
|
|
tmplname
|
name
|
Nom du langage auquel est associé le 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 de validation, ou NULL si aucune
|
|
tmpllibrary
|
text
|
Chemin de la bibliothèque partagée qui code le langage
|
|
tmplacl
|
aclitem[]
|
Droits d'accès au modèle (actuellement inutilisé)
|
Il n'existe actuellement aucune commande de manipulation des modèles
de langages procéduraux ; pour modifier l'information intégrée, un
superutilisateur doit modifier la table en utilisant les commandes
INSERT
,
DELETE
ou
UPDATE
habituelles. Il est probable
qu'une future version de PostgreSQL™ propose des commandes
permettant de modifier les entrées de façon plus propre.
Lorsqu'il est renseigné, le champ
tmplacl
gère le 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 le contrôle des accès aux langages créés à partir
de ce modèle.