Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

a little database access interface

Project Description

Introduction

This is a vary simple database access interface for python.

Feature

  • Easy to use
  • supports sqlite, mysql

Download

Go to the homepage: http://github.com/jander/littlesql/

Example

example table: foo (id int, name string)

Connect

connect to sqlite3

ctx =  SqliteContext("test.db")
db = Database(ctx)

connect mysql

ctx = MySqlContext(username="name", password="pwd", hostname="localhost", db="test")
db = Database(ctx)

Query

query a row dict

db.foo("name=?", "tom").get()

# raw sql
db.get("select * from foo where name=?", "tom")

query many rows

db.foo("id>?", 100).orderby("id desc").limit(0,10).query()

# raw sql
db.query("select * from foo where id>? order by id desc limit 0,100;", 100)

query selected cols

db.foo.query("id, name")

# raw sql
db.query("select id, name from foo")

Update

fdict = dict(name="new foo")
db.foo("id=?", 1).update(**fidct)

# raw sql
db.execute("update foo set name=? where id=?", "new foo", 1)

Delete

db.foo("name like ?", "test%").delete()

# raw sql
db.execute("delete from foo where name like ?", "test%")

Other

see the test code.

Reference

Release History

Release History

This version
History Node

0.1

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting