PostgreSQL database adapter for the Python programming language
C Python Other
Permalink
Failed to load latest commit information.
doc Expose *DATETIMETZ* objects in the extensions module Mar 22, 2017
examples cleanup remaining GPL license text May 20, 2014
lib Expose *DATETIMETZ* objects in the extensions module Mar 22, 2017
psycopg Return objects with timezone parsing infinity timestamptz Mar 22, 2017
sandbox cleanup remaining GPL license text May 20, 2014
scripts Added docs about making a release Mar 1, 2017
tests Return objects with timezone parsing infinity timestamptz Mar 22, 2017
.appveyor.yml Fix curl not found on AppVeyor Mar 22, 2017
.gitignore Added script to create manylinux1 wheels Jan 4, 2017
.travis.yml Consider Python 3.6 and Postgres 9.6 supported Jan 3, 2017
AUTHORS Preparing release 2.3.0-beta1 Nov 6, 2010
INSTALL Dropped content from the INSTALL file Aug 24, 2014
LICENSE Changes license to LGPL3 + OpenSSL exception on all source files Feb 12, 2010
MANIFEST.in Fixed 'make sdist' to work with setuptools Mar 10, 2016
Makefile Fixed 'make sdist' to work with setuptools Mar 10, 2016
NEWS Return objects with timezone parsing infinity timestamptz Mar 22, 2017
README.rst Less stuff in the readme, more in the docs Mar 13, 2017
psycopg2.cproj Move replication connection to C level. Oct 27, 2015
psycopg2.sln New 'withhold' parameter for connection.cursor() Aug 10, 2011
setup.cfg Added empty options in setup.cfg Dec 25, 2016
setup.py Find again mxDateTime includes in default locations Mar 22, 2017
tox.ini Python source cleanup using flake8 Oct 10, 2016

README.rst

psycopg2 - Python-PostgreSQL Database Adapter

Psycopg is the most popular PostgreSQL database adapter for the Python programming language. Its main features are the complete implementation of the Python DB API 2.0 specification and the thread safety (several threads can share the same connection). It was designed for heavily multi-threaded applications that create and destroy lots of cursors and make a large number of concurrent "INSERT"s or "UPDATE"s.

Psycopg 2 is mostly implemented in C as a libpq wrapper, resulting in being both efficient and secure. It features client-side and server-side cursors, asynchronous communication and notifications, "COPY TO/COPY FROM" support. Many Python types are supported out-of-the-box and adapted to matching PostgreSQL data types; adaptation can be extended and customized thanks to a flexible objects adaptation system.

Psycopg 2 is both Unicode and Python 3 friendly.

Documentation

Documentation is included in the doc directory and is available online.

Installation

If your pip version supports wheel packages it should be possible to install a binary version of Psycopg including all the dependencies from PyPI. Just run:

$ pip install -U pip      # make sure your pip is up-to-date
$ pip install psycopg2

If you want to build Psycopg from source you will need some prerequisites (a C compiler, development packages): please check the install and the faq documents in the doc dir for the details.

For any other resource (source code repository, bug tracker, mailing list) please check the project homepage.

Linux/OSX:Linux and OSX build status
Windows:Windows build status