Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

42.26. pg_pltemplate

The catalog pg_pltemplate stores "template" information for procedural languages. A template for a language allows the language to be created in a particular database by a simple CREATE LANGUAGE command, with no need to specify implementation details.

Unlike most system catalogs, pg_pltemplate is shared across all databases of a cluster: there is only one copy of pg_pltemplate per cluster, not one per database. This allows the information to be accessible in each database as it is needed.

Table 42-26. pg_pltemplate Columns

Name Type References Description
tmplname name   Name of the language this template is for
tmpltrusted boolean   True if language is considered trusted
tmplhandler text   Name of call handler function
tmplvalidator text   Name of validator function, or NULL if none
tmpllibrary text   Path of shared library that implements language
tmplacl aclitem[]   Access privileges for template (not yet used)

There are not currently any commands that manipulate procedural language templates; to change the built-in information, a superuser must modify the table using ordinary INSERT, DELETE, or UPDATE commands. It is likely that a future release of PostgreSQL will offer commands to change the entries in a cleaner fashion.

When implemented, the tmplacl field will provide access control for the template itself (i.e., the right to create a language using it), not for the languages created from the template.


 
 
  Published courtesy of The PostgreSQL Global Development Group Design by Interspire