Client Libraries

From PostgreSQL wiki
Jump to navigationJump to search

WARNING: This page is deprecated. For a list of PostgreSQL client libraries, please visit: Drivers

Access libraries, which allow you to talk the PostgreSQL protocol from your favorite language.

C

libpq

https://www.postgresql.org/docs/current/static/libpq.html

The standard access library, used by all the standard PostgreSQL tools. It lets you do almost anything, but is quite low level.

ECPG

https://www.postgresql.org/docs/10/static/ecpg.html

SQL embedded in C. Part of the standard PostgreSQL distribution.

C++

libpqxx

http://pqxx.org/development/libpqxx/

A nice C++ library, with no dependencies other than libpq.

QtSql

http://doc.qt.io/qt-5/qtsql-index.html

A cross-database library, with decent PostgreSQL support. Integrates with Qt widgets, provides the basics.

Pgfe

https://github.com/dmitigr/pgfe

An initial release of a C++17 wrapper for libpq.

OZO

https://github.com/yandex/ozo

OZO is a C++17 library for asynchronous communication with PostgreSQL DBMS. The library leverages the power of template metaprogramming, providing a convenient mapping from C++ types to SQL along with rich query building possibilities. OZO supports different asynchronous paradigms (callbacks, futures, coroutines), using Boost.Asio under the hood. Low-level communication with PostgreSQL server is done via libpq. All concepts in the library are designed to be easily extendable (even replaceable) by the user to simplify adaptation to specific project requirements.

Elixir

Postgrex

http://hexdocs.pm/postgrex/

Go

pq

https://github.com/lib/pq

A pure Go driver for Go's database/sql

pgx

https://github.com/jackc/pgx

A pure Go driver, more features than lib/pq

go-pg

https://github.com/go-pg/pg

Go driver and ORM

Haskell

postgresql-simple

https://hackage.haskell.org/package/postgresql-simple

Java

PostgreSQL JDBC Driver

https://jdbc.postgresql.org

Javascript

node-postgres

https://node-postgres.com

pg-promise

http://vitaly-t.github.io/pg-promise/

Common Lisp

Postmodern

http://marijnhaverbeke.nl/postmodern/

CLSQL

https://github.com/sshirokov/CLSQL

.Net

npgsql

http://www.npgsql.org/

ODBC

https://odbc.postgresql.org/

Perl

DBD::Pg

http://search.cpan.org/~turnstep/DBD-Pg/Pg.pm

The standard PostgreSQL driver for DBI based on libpq

DBD::PgPP

http://search.cpan.org/~arc/DBD-PgPP-0.08/lib/DBD/PgPP.pm

Another DBI driver, this one written in pure Perl.

PHP

Pomm

http://www.pomm-project.org

ORMish

ext-pq

https://github.com/m6w6/ext-pq

A PHP binding to libpq

Python

psycopg2

https://pypi.python.org/pypi/psycopg2

R

RPostgreSQL

https://cran.r-project.org/package=RPostgreSQL

DBI driver

Ruby

ruby-pg

https://bitbucket.org/ged/ruby-pg/wiki/Home

Rust

rust-postgres

https://github.com/sfackler/rust-postgres

Native Rust implementation.

tcl

pgtcl

https://github.com/flightaware/Pgtcl

pgtclng

http://sourceforge.net/projects/pgtclng/