psycopg2 - Python-PostgreSQL Database Adapter

psycopg2 is a PostgreSQL database adapter for the Python programming language. psycopg2 was written with the aim of being very small and fast, and stable as a rock.

psycopg2 is different from the other database adapter because it was designed for heavily multi-threaded applications that create and destroy lots of cursors and make a conspicuous number of concurrent INSERTs or UPDATEs. psycopg2 also provides full asynchronous operations and support for coroutine libraries.

psycopg2 can compile and run on Linux, FreeBSD, Solaris, MacOS X and Windows architecture. It supports Python versions from 2.4 onwards and PostgreSQL versions from 7.4 onwards.

psycopg2 is free software ("free as in freedom" but I like beer too.) It is licensed under the GNU Lesser General Public License, version 3 or later plus an exception to allow OpenSSL (libpq) linking; see LICENSE for more details.


Start by reading the INSTALL file. More information about psycopg2 extensions to the DBAPI-2.0 is available in the files located in the doc/ direcory. Example code can be found in the examples/ directory. If you make any changes to the code make sure to run the unit tests localed in tests/.

Online documentation can be found at:

If you stumble upon any bugs, please tell us at:


For a list of contributors to the project, see the AUTHORS file.