Build SQL with native Python data structure smoothly.
Python Other
Clone or download
Latest commit 4b2c58c Jun 10, 2018


The full version of this documentation is at

MoSQL --- More than SQL

It lets you use the common Python data structures to build SQLs. Here are the main features:

  1. Easy-to-learn --- Everything is just a plain Python object or SQL keyword.
  2. Flexible --- The query it builds fully depends on the structure you provide.
  3. Secure --- It prevents the SQL injection from both identifier and value.
  4. Fast --- It simply translates the Python data structures into SQLs.

It is just more than SQL.

MoSQL is Elegant

Here we have a dictionary which includes the information of a person:

>>> mosky = {
...    'person_id': 'mosky',
...    'name'     : 'Mosky Liu',
... }

And we want to insert it into a table named person. It is easy with mosql.query:

>>> from mosql.query import insert
>>> print(insert('person', mosky))
INSERT INTO "person" ("person_id", "name") VALUES ('mosky', 'Mosky Liu')

Check The Common Queries — mosql.query for detail, or there are examples which interact with real database.

Like it?

It is available on PyPI:

$ sudo pip install mosql

Or clone the source code from GitHub:

$ git clone git://