手撸ORM

ORM简介

ORM即Object Relational Mapping,全称对象关系映射
当我们需要对数据库进行操作时,势必需要通过连接数据、调用sql语句、执行sql语句等操作,ORM将数据库中的表,字段,行与我们面向对象编程的类及其方法,属性等一一对应,即将该部分操作封装起来,程序猿不需懂得sql语句即可完成对数据库的操作。

Python中常用ORM框架

Django's ORM 

优点:

  1. 易用,学习曲线短 

  2. 和Django紧密集合,用Django时使用约定俗成的方法去操作数据库 

缺点:

  1. 不好处理复杂的查询,强制开发者回到原生SQL 

  2. 紧密和Django集成,使得在Django环境外很难使用 

 

peewee 

优点:

  1. Django式的API,使其易用 

  2. 轻量实现,很容易和任意web框架集成 

缺点:

  1. 多对多查询写起来不直观 

 

SQLAlchemy 

优点:

  1. 企业级 API,使得代码有健壮性和适应性 

  2. 灵活的设计,使得能轻松写复杂查询 

缺点:

  1. 重量级 API,导致长学习曲线 

其它:SQLObject 、Storm 、、、、

 原生操作数据库模块 pymysql

pymysql模块

ORM框架之SQLAlchemy

链接

手把手带你写一个自己的ORM框架

 手写ORM

posted @ 2018-05-02 15:03  刘清政  阅读(1026)  评论(0编辑  收藏  举报