pg_pltemplate
Le catalogue pg_pltemplate
stocke les informations
squelettes (« template ») des langages procéduraux. Un squelette
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 une par base
de données. L'information est de ce fait accessible à toute base de
données.
Tableau 51.37. 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 |
tmpldbacreate | boolean | True s'il s'agit d'un langage créé par le
propriétaire de la base |
tmplhandler | text | Nom de la fonction de gestion des appels |
tmplinline | text | Nom de la fonction de gestion des blocs anonymes. NULL sinon |
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 (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 que pg_pltemplate
sera
supprimé dans une prochaine version de
PostgreSQL, pour conserver cette information
des langages de procédure dans leur scripts d'installation respectifs.