minipg

Yet another Python PostgreSQL database driver

11
0
Python

=============
minipg

Yet another Python PostgreSQL database driver.

Requirements

  • PostgreSQL 9.6+
  • Python 3.9+

Installation

use pip
::

$ pip install minipg

or

copy a module file.
::

$ cd $(SOMEWHERE_PYTHON_PATH)
$ wget https://github.com/nakagami/minipg/raw/master/minipg.py

Example

::

import minipg
conn = minipg.connect(host=‘localhost’,
user=‘postgres’,
password=‘secret’,
database=‘database_name’)
cur = conn.cursor()
cur.execute(‘select foo, bar from baz’)
for r in cur.fetchall():
print(r[0], r[1])
conn.close()

SSL Connection
++++++++++++++++++

You can make an SSL connection with an instance of SSLContext.
Below is an example of an ssl connection without certificate validation.

::

import ssl
import minipg
ssl_context = ssl.create_default_context()
ssl_context.check_hostname = False
ssl_context.verify_mode = ssl.CERT_NONE
conn = minipg.connect(host=‘localhost’,
user=‘postgres’,
password=‘secret’,
database=‘database_name’,
ssl_context=ssl_context)

Restrictions and Unsupported Features

  • Supported Authentication METHOD are only ‘trust’, ‘md5’ and ‘scram-sha-256’.
  • Not full support for array data types.
  • Not support for prepared statements.

For MicroPython

See https://github.com/nakagami/micropg .
It’s a minipg subset driver.