PostgreSQL Feature Set
As stated previously in this chapter, PostgreSQL is widely considered the most advanced open source database in the world. PostgreSQL provides a wealth of features that are usually only found in commercial databases such as DB2 or Oracle. The following is a brief listing of some of these core features, as of PostgreSQL 7.1.x.
- Object-Relational DBMS
PostgreSQL approaches data with an object-relational model, and is capable of handling complex routines and rules. Examples of its advanced functionality are declarative SQL queries, multi-version concurrency control, multi-user support, transactions, query optimization, inheritance, and arrays.
- Highly extensible
PostgreSQL supports user-defined operators, functions, access methods, and data types.
- Comprehensive SQL support
PostgreSQL supports the core SQL99 specification and includes advanced features such as SQL92 joins.
- Referential integrity
PostgreSQL supports referential integrity, which is used to insure the validity of a database’s data.
- Flexible API
The flexibility of the PostgreSQL API has allowed vendors to provide development support easily for the PostgreSQL RDBMS. These interfaces include Object Pascal, Python, Perl, PHP, ODBC, Java/JDBC, Ruby, TCL, C/C++, and Pike.
- Procedural languages
PostgreSQL has support for internal procedural languages, including a native language called PL/pgSQL. This language is comparable to the Oracle procedural language, PL/SQL. Another advantage to PostgreSQL is its ability to use ...