130 lines
4.4 KiB
Plaintext
130 lines
4.4 KiB
Plaintext
<!-- doc/src/sgml/external-projects.sgml -->
|
|
|
|
<appendix id="external-projects">
|
|
<title>External Projects</title>
|
|
|
|
<para>
|
|
<productname>PostgreSQL</productname> is a complex software project,
|
|
and managing the project is difficult. We have found that many
|
|
enhancements to <productname>PostgreSQL</productname> can be more
|
|
efficiently developed separately from the core project.
|
|
</para>
|
|
|
|
<sect1 id="external-interfaces">
|
|
<title>Client Interfaces</title>
|
|
|
|
<indexterm>
|
|
<primary>interfaces</primary>
|
|
<secondary>externally maintained</secondary>
|
|
</indexterm>
|
|
|
|
<para>
|
|
There are only two client interfaces included in the base
|
|
<productname>PostgreSQL</productname> distribution:
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<link linkend="libpq">libpq</link> is included because it is the
|
|
primary C language interface, and because many other client interfaces
|
|
are built on top of it.
|
|
</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>
|
|
<link linkend="ecpg">ECPG</link> is included because it depends on the
|
|
server-side SQL grammar, and is therefore sensitive to changes in
|
|
<productname>PostgreSQL</productname> itself.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
All other language interfaces are external projects and are distributed
|
|
separately. A
|
|
<ulink url="https://wiki.postgresql.org/wiki/List_of_drivers">list of language interfaces</ulink>
|
|
is maintained on the PostgreSQL wiki. Note that some of these packages are
|
|
not released under the same license as <productname>PostgreSQL</productname>.
|
|
For more information on each language interface, including licensing terms,
|
|
refer to its website and documentation.
|
|
</para>
|
|
|
|
<para>
|
|
<ulink url="https://wiki.postgresql.org/wiki/List_of_drivers"></ulink>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="external-admin-tools">
|
|
<title>Administration Tools</title>
|
|
|
|
<indexterm>
|
|
<primary>administration tools</primary>
|
|
<secondary>externally maintained</secondary>
|
|
</indexterm>
|
|
|
|
<para>
|
|
There are several administration tools available for
|
|
<productname>PostgreSQL</productname>. The most popular is
|
|
<application><ulink url="https://www.pgadmin.org/">pgAdmin</ulink></application>,
|
|
and there are several commercially available ones as well.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="external-pl">
|
|
<title>Procedural Languages</title>
|
|
|
|
<indexterm>
|
|
<primary>procedural language</primary>
|
|
<secondary>externally maintained</secondary>
|
|
</indexterm>
|
|
|
|
<para>
|
|
<productname>PostgreSQL</productname> includes several procedural
|
|
languages with the base distribution: <link
|
|
linkend="plpgsql">PL/pgSQL</link>, <link linkend="pltcl">PL/Tcl</link>,
|
|
<link linkend="plperl">PL/Perl</link>, and <link
|
|
linkend="plpython">PL/Python</link>.
|
|
</para>
|
|
|
|
<para>
|
|
In addition, there are a number of procedural languages that are developed
|
|
and maintained outside the core <productname>PostgreSQL</productname>
|
|
distribution. A list of
|
|
<ulink url="https://wiki.postgresql.org/wiki/PL_Matrix">procedural languages</ulink>
|
|
is maintained on the PostgreSQL wiki. Note that some of these projects are
|
|
not released under the same license as <productname>PostgreSQL</productname>.
|
|
For more information on each procedural language, including licensing
|
|
information, refer to its website
|
|
and documentation.
|
|
</para>
|
|
|
|
<para>
|
|
<ulink url="https://wiki.postgresql.org/wiki/PL_Matrix"></ulink>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="external-extensions">
|
|
<title>Extensions</title>
|
|
|
|
<indexterm>
|
|
<primary>extension</primary>
|
|
<secondary>externally maintained</secondary>
|
|
</indexterm>
|
|
|
|
<para>
|
|
<productname>PostgreSQL</productname> is designed to be easily extensible. For
|
|
this reason, extensions loaded into the database can function
|
|
just like features that are built in. The
|
|
<filename>contrib/</filename> directory shipped with the source code
|
|
contains several extensions, which are described in
|
|
<xref linkend="contrib"/>. Other extensions are developed
|
|
independently, like <application><ulink
|
|
url="https://postgis.net/">PostGIS</ulink></application>. Even
|
|
<productname>PostgreSQL</productname> replication solutions can be developed
|
|
externally. For example, <application> <ulink
|
|
url="https://www.slony.info">Slony-I</ulink></application> is a popular
|
|
primary/standby replication solution that is developed independently
|
|
from the core project.
|
|
</para>
|
|
</sect1>
|
|
</appendix>
|