When you want to build applications that access a PostgreSQL database, you use one (or more) of the client application programming interfaces (or APIs for short). PostgreSQL has a rich variety of APIs that support a number of programming languages.
PostgreSQL ships with the APIs shown in Table 5.1.
Interface Name |
Supported Languages |
Described In |
---|---|---|
libpq |
C/C++ |
Chapter 8 |
libpgeasy |
C/C++ |
Chapter 9 |
libpq++ |
C++ |
Chapter 10 |
ecpg |
C/C++ |
Chapter 11 |
ODBC |
C/C++ |
Chapter 12 |
JDBC |
Java |
Chapter 13 |
Perl |
Perl |
Chapter 14 |
PHP1 |
PHP |
Chapter 15 |
pgtcl |
TCL |
Chapter 16 |
PyGreSQL |
Python |
Chapter 17 |
pg.el[1] |
Emacs Lisp |
Not covered |
[1] The standard PostgreSQL distribution does not include the PHP or Emacs interfaces, but they are available separately on the web.
Table 5.1 is not all-inclusive. You can write PostgreSQL clients using languages not mentioned in Table 5.1. For example, Kylix (Borland's Pascal offering for Linux) offers a PostgreSQL interface. Also, many other languages (such as Microsoft Access and Visual Basic) provide access to PostgreSQL through the ODBC interface.