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.