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

最新文章

  1. Hololens 硬件细节 Hardware Detail
  2. Opencv出现错误“0xc000007b”的解决办法
  3. treap树模板
  4. Android判断当前系统时间是否在指定时间的范围内(免消息打扰)
  5. 5.3---找最近的两个数(CC150)
  6. 【Android】如何将eclipse工程导入studio
  7. android selector
  8. Hibernate 中update hql语句
  9. allegro使用汇总 [转贴]
  10. Java基础从数组到集合之间关键字的区别!!!!
  11. Circle - SGU 130(递推)
  12. zxing生成和解析二维码
  13. 写20万数据到Excel只需9秒
  14. --@angularJS--综合小实例1
  15. Java中的List转换成JSON报错(二)
  16. 根据appId匹配项目名称
  17. 并发编程之volatile
  18. Rsync客户端卡死的问题查询
  19. 剑指offer 1.数组 二维数组中查找
  20. APP支付宝支付接入

热门文章

  1. python的函数(一)
  2. If TransactionScope will close database connections
  3. C# socket 发送图片和文件
  4. InfoPath读取数据库
  5. PHP 8中数据类型
  6. [WPF]DropShadowEffect导致Image模糊问题
  7. 搭建spark集群
  8. SDN第三次上机
  9. Python在Win10系统的安装和使用配置
  10. JQUERY方法给TABLE动态增加行