PostgreSQLは複雑なソフトウェアプロジェクトであり、その管理は困難です。 PostgreSQLに対する拡張をコアプロジェクトと分離して開発する方がより効率的であることが判りました。 分離したプロジェクトは独自に開発チーム、メーリングリスト、バグ追跡、リリーススケジュールを持ちます。 この独立性により開発を簡単に進められますが、一方でユーザ側の作業が多くなります。 ユーザは必要になった段階でデータベースの拡張を探し出さなければなりません。 本節では、外部で開発された拡張の中からより人気のある一部を紹介し、また、探し方についても説明します。
多くのPostgreSQL関連のプロジェクトがhttp://gborg.postgresql.orgにあるGBorg、もしくは、http://pgfoundry.orgにあるpgFoundryでサービスが提供されています。 他にも別の場所でサービスが提供されているPostgreSQL関連プロジェクトもありますが、これらはインターネットで検索して探し出さなければなりません。
PostgreSQLの基本配布の中にはあまりインタフェースが含まれていません。 libpqは、主なCインタフェースで、他の多くのインタフェースの構築に必要なものですのでパッケージに含まれています。 ecpgは、サーバ側の文法に拘束されており、そのためデータベースのバージョンへの依存性が非常に大きいため、パッケージに含まれています。 他のインタフェースは全て独立したプロジェクトであり、別途インストールしなければなりません。
以下に人気のあるインタフェースを一部示します。
これは、Windowsアプリケーション用のもっとも一般的なインタフェースです。
JDBCインタフェースです。
より最近のWindowsアプリケーション用の.Netインタフェースです。
新しいC++インタフェースです。
古めのC++インタフェースです。
libpqに似たAPIを持つ、Perlインタフェースです。
DBD標準APIを使用するPerlインタフェースです。
より新しい版のTclインタフェースです。
オリジナル版のTclインタフェースです。
Pythonインタフェースライブラリです。
これらは全てGBorg(http://gborg.postgresql.org)もしくはpgFoundry (http://pgfoundry.org)にあります。