Skip to main content

Python 3 database interface tools.

Project description

The PLIB3.DBTOOLS package provides an easier to use interface to DB-API compliant databases. The latest official release is available on PyPI at and the latest source code is available on Gitlab at

PLIB3.DBTOOLS is built using the build PEP 517 build tool with the setuputils_build backend, which uses the setuputils helper module to build the setup.cfg file that is included with the distribution. This module and build backend are available at


The following classes and functions are available in the plib.dbtools namespace:

  • The DBInterface class provides a simple API for working with databases. It assumes that the underlying database engine conforms to the Python DB API. This class itself does not know about any particular database engine; a customized class should be derived from it for each particular engine.

  • The MySQLDBInterface class customizes DBInterface to work with a MySQL database. It uses the MySQLdb third-party Python package. This class is in the plib.dbtools.mysql sub-package.

  • The SQLite3DBInterface class customizes DBInterface to work with an SQLite version 3 database. It uses the sqlite3 module that comes with Python as its database engine. This class is in the plib.dbtools.sqlite sub-package.

  • The get_db_interface function is a convenience function that returns an instance of the appropriate DBInterface subclass for the database type passed to it.

  • The get_db_interface_class and get_db_interface_args functions factor out key portions of get_db_interface so that they can be used separately if desired. For example, some databases might require subclassing the interface class further, or customizing the interface arguments.


The simplest way to install PLIB3.DBTOOLS is by using pip:

$ python3 -m pip install plib3.dbtools

This will download the latest release from PyPI and install it on your system. If you already have a downloaded source tarball or wheel, you can have pip install it directly by giving its filename in place of “plib3.dbtools” in the above command line.

The Zen of PLIB3

There is no single unifying purpose or theme to PLIB3, but like Python itself, it does have a ‘Zen’ of sorts:

  • Express everything possible in terms of built-in Python data structures.

  • Once you’ve expressed it that way, what the code is going to do with it should be obvious.

  • Avoid boilerplate code, and boilerplate data. Every piece of data your program needs should have one and only one source.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plib3.dbtools-1.3.1.tar.gz (15.8 kB view hashes)

Uploaded source

Built Distribution

plib3.dbtools-1.3.1-py3-none-any.whl (19.3 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page