其实我是打算自己写个简单的python mysql orm数据库模型,虽然基本功能都实现了,但是bug也不少….   还有这两天正在忙电商数据的导入,因为字段实在太多, 如果用mysqldb、pymysql来操作的话,实在是有些繁琐呀,咱们也不能 insert into xiaorui (col1,col2)values(a,b) …. 

关于peewee模块,原文链接是 http://xiaorui.cc


http://xiaorui.cc/2015/10/09/%E8%81%8A%E8%81%8Apython%E7%9A%84%E8%BD%BB%E9%87%8F%E7%BA%A7orm-peewee%E5%8F%8A%E5%AF%B9%E6%AF%94sqlalchemy/


对于这种繁杂的mysql db操作,大家会选用orm数据模型。现在比较流行的python orm模块有 SQLAlchemy 和 peewee 。  然而sqlalchemy 实在是有些繁重,而peewee更加简单易用了。增曾经在flask平台项目中,使用过peewee做数据的管理,当时因为sql语句里面大量的连表查询和计算,所以后来放弃了。 

Django’s ORM

优点:
易用,学习曲线短
和Django紧密集合,用Django时使用约定俗成的方法去操作数据库

缺点:
QuerySet速度不给力,会逼我用Mysqldb来操作原生sql语句。以前写过一篇关于django orm 跟mysqldb性能的对比

http://xiaorui.cc/2015/09/24/%E8%AF%9D%E8%AF%B4django-orm%E6%A8%A1%E5%9E%8B%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AF%94%E5%8E%9F%E7%94%9F%E7%9A%84mysqldb%E6%85%A2/


跟Django耦合太重了,使得在Django环境外很难使用。

peewee


优点:
Django式的API,使其易用
轻量实现,很容易和任意web框架集成
缺点:
不支持自动化 schema 迁移
不能像Django那样,使线上的mysql表结构生成结构化的模型。

SQLAlchemy


优点:
巨牛逼的API,使得代码有健壮性和适应性
灵活的设计,使得能轻松写复杂查询
缺点:
工作单元概念不常见
重量级 API,导致长学习曲线

废话不多少,咱们先简单走走peewee的例子。

下面是个完整的例子。 

官方是peewee操作sqlite的例子,我这再说说mysql的连接的例子。

下面是使用peewee添加数据的例子,其实他的用法跟django orm差不多,一般来说只要用过django orm的人,会立马上手的。 

peewee更改数据

peewee删除数据

这里再介绍个新功能,使用peewee根据mysql数据库生成模型。 

今天就简单聊下peewee的功能 ,过两天我会分享下peewee的高级功能。



对Python及运维开发感兴趣的朋友可以加QQ群 : 478476595 !!!
{ 2000人qq大群内有各厂大牛,常组织线上分享及沙龙,对高性能及分布式场景感兴趣同学欢迎加入该QQ群 }

另外如果大家觉得文章对你有些作用!   帮忙点击广告. 一来能刺激我写博客的欲望,二来好维护云主机的费用.
如果想赏钱,可以用微信扫描下面的二维码. 另外再次标注博客原地址  xiaorui.cc  ……   感谢!
暂无相关产品