dbpy - Python的数据库CRUD封装库


GPL
跨平台
Python

软件简介

dbpy是一个python写的数据库CURD人性化api库。借鉴了 webpy db
drupal database 的设计。 如果喜欢
tornado db 或者 webpy db这类轻巧的db库,或者想发挥原生SQL优势,那么值得一试。

特性:

  1. 灵活简单

  2. 天马行空的SQL构建语法糖

  3. 线程安全的连接池

  4. 支持读写分离(当前限定只能是一主多副模式)

  5. 支持简单事务

示例代码:

print db.query('SELECT 1')
# > ((1L,),)

# use social db
print db.query('SELECT 1', key='social')
# > ((1L,),)

print db.query('SELECT * FROM users WHERE uid=%s and name=%s', (1, 'user_1'))
# > ((1L, u'user_1'),)

# Wanna return dict row
print db.query('SELECT * FROM users WHERE uid=%s and name=%s',
            (1, 'user_1'), as_dict=True)
# > ({'uid': 1L, 'name': u'user_1'},)

# Use fetchmany(many) then yeild, Return generator
res = db.query('SELECT * FROM users WHERE uid=%s and name=%s',
                (1, 'user_1'), many=5, as_dict=True)
print res
print res.next()
# > <generator object _yield at 0x7f818f4b6820>
# > {'uid': 1L, 'name': u'user_1'}