一个轻量级的mysql客户端库。
lorm的Python项目详细描述
lorm是一个用于python的轻量级mysql客户端库。 内置连接池,django风格的查找表达式。
安装
上一个稳定版本在pypi上可用,可以使用pip:
安装$ pip install lorm
示例
CREATETABLE`pets`(`id`int(10)unsignedNOTNULLAUTO_INCREMENT,`name`varchar(20)NOTNULLDEFAULT'',`add_time`datetimeDEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;
连接到mysql
>>>importpymysql>>>importlorm>>>db=lorm.Hub(pymysql)>>>db.add_pool('default',host='localhost',port=3306,user='root',passwd='root',db='test',autocommit=True,pool_size=8,wait_timeout=30)
插入
>>>db.default.pets.create(name='cat')1
查询
>>>db.default.pets.get(id=1){u'id':2,u'name':u'cat'}
行样式
>>>db.default.pets.filter(id__lt=10).select('id')[:][{u'id':1},{u'id':2},{u'id':4},{u'id':5},{u'id':6},{u'id':7},{u'id':8},{u'id':9}]>>>db.default.pets.filter(id__lt=10).values('id')[:]((1,),(2,),(4,),(5,),(6,),(7,),(8,),(9,))>>>db.default.pets.filter(id__lt=10).flat('id')[:][1,2,4,5,6,7,8,9]
raw sql
>>>db.default.fetchall("select * from pets")((1,u'cat'),(2,u'dog'),(3,u'bird'))
事务
>>>withdb.defaultasc:>>>printc.pets.create(name='fish')
有关更多示例,请参见example.py
功能
- 内置连接池
- django样式的查找表达式
- 并发安全
- Gevent友好型
- 动态驱动程序