Historique

PostgreSQL à été initialement developpé à l'Université de Berkeley sous le nom de Ingres (1977-1985).
Après avoir été amélioré regulièrement au cours de ses premières années par les sociétés RationalTechnologies et Ingres Corp., ces sociétés furent racheté par la société nommé maintenant Informix.
Le projet continua indépendamment à Berkeley sous le nom de Postgres (1986-1994).
Le programme fut utilisé par la société Illustra, qui fut encore racheté par Informix pour l'intégration de Postgres à leur propre SGBD: Informix Universal Server.
Après l'apparition des premières normes du langage SQL, le langage de requête de Postgres est remplacé par le langage SQL.
En 1995, le projet est repris par des développeurs indépendant de l'Université de Berkeley et est renommé Postgres95.
Là, le projet s'étoffe et se transforme à partir de 1997 en PostgreSQL, lorsque l'ensemble des fonctionnalitées SQL sont intégrées au serveur.

A l'origine POSTGRES était un projet de recherche en base de données dirigé par le Professeur Michael Stonebraker de l'Université de Berkeley.
Pour faciliter les recherches un logiciel «banc d'essai» fut créé il s'agit du logiciel de Système de Gestion de Base de données «POSTGRES».
Le modèle de données POSTGRES peut être désigné comme «relationnel étendu», «objet orienté» ou «objet relationnel».
Sa fonction principale était de fournir une plate-forme de test pour l'implémentation de nouvelles idées dans la recherche en matière de base de données.
De nombreux étudiants et professeurs de Berkeley ont contribué à la mise en place de POSTGRES.
Toutes les références à POSTGRES dans le document présent concerne le logiciel lui-même. Aujourd'hui POSTGRES ne constitue plus un programme de recherche à l'université de Berkeley.
En 1994, Andrew Yu et Jolly Chen ont ajouté le langage SQL à POSTGRES, et le code fut alors délivré sur le Web afin que le produit trouve sa voie. Postgres95 était un descendant public et open source du code original de Berkeley.
A partir de 1996, il devint clair que le nom de Postgres95 n'était plus adapté.
Un nouveau nom, PostgreSQL, fut choisi pour refléter la relation entre le POSTGRES originel et les versions plus récentes supportant SQL.
En même temps, les numéros de version furent réinitialisés à 6.0, de façon à revenir dans la séquence d'origine du projet POSTGRES. Pour le développement des versions 1.0.x de Postgres95, l'accent a été mis sur la stabilité du code.
Avec les versions 6.x de PostgreSQL, la priorité est passée de l'identification et la compréhension des problèmes existant à l'accroissement des fonctionnalités et possibilités, bien que le travail continue dans tous les domaines. 22.1.1 État actuel de PostgreSQL.
PostgreSQL s'appuie sur le modèle relationnel mais apporte les extensions suivantes : les classes, l'héritage, les types de données utilisateurs (tableaux, structures, listes..), les fonctions.
Cela permet de qualifier PostgreSQL de système de gestion de base de données de «relationnel-objet» (ORDBMS), à ne pas confondre avec les bases de données orientées objets qui ne supportent pas SQL, mais OQL (Object Query Language). PostgreSQL est livré avec plusieurs documents très complets : un tutorial, qui permet d'avoir une vision assez rapide du produit, un guide de l'utilisateur, un guide du programmeur, un guide de l'administrateur, un guide des interfaces, un guide supplémentaire pour ceux qui veulent contribuer au développement de PostgreSQL.
PostgreSQL fonctionne sur plus de 20 environnements depuis la version 6.4. Un pilote conforme aux standards ODBC ou JDBC est disponible pour les autres environnements.