The first part of this manual is the description of the client-side programming interfaces and support libraries for various languages. The second part explains the PostgreSQL approach to extensibility and describe how users can extend PostgreSQL by adding user-defined types, operators, aggregates, and both query language and programming language functions. After a discussion of the PostgreSQL rule system, we discuss the trigger and SPI interfaces. The third part documents the procedural languages available in the PostgreSQL distribution.
Proficiency with Unix and C programming is assumed.