django学习笔记 | ORM

目录

ORM 介绍

Mapping 映射

ORM优缺点


  • ORM 介绍

对象关系映射(Object Relational Mapping), 将关系数据(库)中的业务数据用对象的形式表示,通过面向对象(Object-Oriented)方式将对象组织起来。对于面向对象而言,数据库应与业务逻辑分离,而不是绑定一起;ORM过程中是通过映射(Mapping)达到业务对象与数据库分离的目的。

 

  • Mapping 映射

在mysql数据库中有如下两张数据表:

 

 

映射成为以下两个对象:

 

比照着来看:

右边的数据表对应着左边的对象。

 

 

 

  • ORM优缺点

优点

缺点

实现了代码与数据操作的解耦合

 

当数据库要从mysql转成oracle,只需ORM底层去判断转成什么数据库对应要用的sql语句即可

牺牲性能

 

从对象转成sql的这个过程还是会牺牲性能(虽然对于性能的牺牲不是很严重,但还是有牺牲)

无须写原生sql,开发效率up

复杂语句力不从心

 

复杂的操作可能在性能上比不上原生SQL

防止SQL注入

 

会进行SQL注入检测