Python数据库及ORM框架对比选择

使用Python进行MySQL的库主要有三个:

Python-MySQL(更熟悉的名字可能是MySQLdb),
PyMySQL
SQLAlchemy。
Python-MySQL:
资格最老,核心由C语言打造,接口精炼,性能最棒,缺点是环境依赖较多,安装复杂,近两年已停止更新,
只支持Python2,不支持Python3
PyMySQL:
为替代Python-MySQL而生,纯python打造,
接口与Python-MySQL兼容,安装方便,支持Python3。
SQLAlchemy:
是一个ORM框架,它并不提供底层的数据库操作,
而是要借助于MySQLdb、PyMySQL等第三方库来完成,目前SQLAlchemy在Web编程领域应用广泛。

ORM种类:

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

缺点:
    QuerySet速度不给力,会逼我用Mysqldb来操作原生sql语句。
    以前写过一篇关于django orm 跟mysqldb性能的对比
Peewee
优点:
Django式的API,使其易用
轻量实现,很容易和任意web框架集成

缺点:
不支持自动化 schema 迁移
不能像Django那样,使线上的mysql表结构生成结构化的模型。
SQLAlchemy
优点:
巨牛逼的API,使得代码有健壮性和适应性
灵活的设计,使得能轻松写复杂查询

缺点:
工作单元概念不常见
重量级 API,导致长学习曲线

来源:聊聊python的轻量级orm peewee及对比SQLAlchemy
官方教程
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容