The .club Club

PugSQL
SQL is Extremely Good, Actually

PugSQL is a simple Python interface for using parameterized SQL, in files, with any SQLAlchemy-supported database.

import pugsql # Create a module of database functions from a set of sql files on disk. queries = pugsql.module('resources/sql') # Point the module at your database. queries.connect('sqlite:///foo.db') # Invoke parameterized queries, receive dicts! user = queries.find_user(user_id=42) # -> { 'user_id': 42, 'username': 'mcfunley' } 

In the example above, the query would be specified like this:

-- :name find_user :one select * from users where user_id = :user_id 

So throw away your bulky ORM and talk to your database the way the gods intended! Install PugSQL today!

$ pip install pugsql 

PugSQL was inspired by the amazing HugSQL library for the Clojure programming language.