patabase

Simplify DB API usage


License
Apache-2.0
Install
pip install patabase==0.2.2

Documentation

Patabase

Database API as it described in PEP 249 is a comprehensive API. It's amazing and we can implement any advanced scenario with it. But for a simple task we don't need an advanced or comprehensive tool. We just need a simple tool to do the job for us. After all we all agree that "Simple is better than complex."

Installation

We'd like to support all the databases, but we don't like to install all the drivers of all the databases. So first of all install and config your database driver then install corresponding python package:

pip install -U psycopg2  # for Postgres

pip install -U pyodbc  # for Microsoft SQL Server 

now you can install it from PyPi by following command:

pip install -U patabase

or if you prefer the latest development version, you can install it from the source:

git clone https://github.com/xurvan/patabase.git
cd patabase
python setup.py install

Quickstart

SQL commands are usually categorized into DDL, DQL, DML, DCL and TCL but we are going to categorized them into different categories:

  • Select: a command with output that is not going to change anything
  • Perform: a command without output that is going to change something
  • Function: a stored procedure with output
  • Procedure: a stored procedure without output

so let us see some code:

from patabase import Postgres

db = Postgres(host='localhost', user='USERNAME', password='PASSWORD', database='DATABASE_NAME')

db.perform('''
create table users
(
    id          serial primary key not null,
    name        varchar            not null,
    username    varchar unique     not null
)
''')

rows = db.select('select * from users')

for row in rows:
    print(row)

TODO

  • Support PostgreSQL
  • Support Microsoft SQL Server
  • Support SQLite
  • Support MySQL
  • Support Oracle Database