External ProjectsPostgreSQL is a complex software project,
and managing the project is difficult. We have found that many
enhancements to PostgreSQL can be more
efficiently developed separately from the core project.
To help our community with the development of their external projects, we
have created PgFoundry, a
website that provides hosting for PostgreSQL>-related
projects that are maintained outside the core PostgreSQL>
distribution. PgFoundry is built using the GForge software project and is
similar to SourceForge.net> in its
feature set, providing mailing lists, forums, bug tracking, CVS, and web
hosting. If you have a PostgreSQL>-related open source
project that you would like to have hosted at PgFoundy, please feel free
to create a new project.
Many PostgreSQL-related projects are still
hosted at GBorg>. GBorg is
the original external community developer site, and while it is
currently closed to new projects in favor of PgFoundry, it still
contains many active and relevant projects. Other popular
PostgreSQL-related projects are hosted
independently, or on other project-hosting sites such as SourceForge.net. You should search
the web if you don't find the project you are looking for.
Client Interfacesinterfacesexternally maintained
There are only two client interfaces included in the base
PostgreSQL distribution:
libpq is included because it is the
primary C language interface, and because many other client interfaces
are built on top of it.
ecpg is included because it depends on the
server-side SQL grammar, and is therefore sensitive to changes in
PostgreSQL itself.
All other language interfaces are external projects and are distributed
separately. includes a list of
some of these projects. Note that some of these packages might not be
released under the same license as PostgreSQL>. For more
information on each language interface, including licensing terms, refer to
its website and documentation.
Externally Maintained Client Interfaces>
NameLanguageCommentsWebsiteDBD::PgPerlPerl DBI driverhttp://search.cpan.org/dist/DBD-Pg/JDBCJDBCType 4 JDBC driverhttp://jdbc.postgresql.org/libpqxxC++New-style C++ interfacehttp://pqxx.org/libpq++C++Old-style C++ interfacehttp://gborg.postgresql.org/project/libpqpp/Npgsql.NET.NET data providerhttp://npgsql.projects.postgresql.org/ODBCngODBCAn alternative ODBC driverhttp://projects.commandprompt.com/public/odbcng/pgtclngTclhttp://pgfoundry.org/projects/pgtclng/psqlODBCODBCThe most commonly-used ODBC driverhttp://psqlodbc.projects.postgresql.org/psycopgPythonDB API 2.0-complianthttp://www.initd.org/
Procedural Languagesprocedural languageexternally maintainedPostgreSQL includes several procedural
languages with the base distribution: PL/PgSQL, PL/Tcl,
PL/Perl, and PL/Python.
In addition, there are a number of procedural languages that are developed
and maintained outside the core PostgreSQL
distribution. lists some of these
packages. Note that some of these projects might not be released under the same
license as PostgreSQL>. For more information on each
procedural language, including licensing information, refer to its website
and documentation.
ExtensionsextensionsPostgreSQL> is designed to be easily extensible. For
this reason, extensions loaded into the database can function just
like features that are packaged with the database. The
contrib/> directory shipped with the source code
contains a large number of extensions. The README> file
in that directory contains a summary. They include conversion
tools, full-text indexing, XML> tools, and additional
data types and indexing methods. Other extensions are developed
independently, like PostGIS>. Even
PostgreSQL> replication solutions are developed
externally. For example, Slony-I> is a popular
master/slave replication solution that is developed independently
from the core project.
There are several administration tools available for
PostgreSQL>. The most popular is
pgAdmin III>,
and there are several commercially available ones as well.