码迷,mamicode.com
首页 > 其他好文 > 详细

九、Django之ORM

时间:2018-07-25 01:07:25      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:现在   app   是什么   新手   面向   引擎   obj   编写   映射   

一、前言

用于实现面向对象编程语言里不同类型系统的数据之间的转换,换言之,就是用面向对象的方式去操作数据库的创建表以及增删改查等操作。

到目前为止,当我们的程序涉及到数据库相关操作时,一般操作流程如下:

  • 创建数据库,设计表结构和字段;
  • 使用 MySQLdb 来连接数据库,并编写数据访问层代码,使用原生SQL语句进行访问数据;
  • 业务逻辑层去调用数据访问层执行数据库操作,获取结果;

 

ORM是什么?Object Relational Mapping(关系对象映射)

1、类名------>数据库中的表名

2、类属性--------->数据库的字段

3、类实例--------->数据库表里的一条记录

4、obj.id  obj.name------>获取类实例对象的属性

 

Django ORM的优势:

1、Django的orm操作本质是根据对接的数据库引擎,翻译成对应的sql语句, 避免新手写sql语句带来的性能问题,同时ORM使我们的通用数据库交互变得简单易行,而且完全不用考虑复杂的SQL语句。

2、所有使用Django开发的项目无需关心程序底层使用的是MySQL、Oracle、sqlite....等数据库,如果数据库需要迁移,只需要更换Django的数据库引擎即可;

二、ORM定义

1、梳理关系和建模

2、定义表和确定字段

3、setttings和同步数据库

 

三、ORM的关系

关系数据库的威力体现在表之间的相互关联。 Django 提供了三种最常见的数据库关系:多对一(many-to-one),多对多(many-to-many),一对一(one-to-one)。

1、多对一(many-to-one)

2、多对多(many-to-many)

3、一对一(one-to-one)

 

四、ORM的操作

1、增

2、删

3、改

4、查

 

九、Django之ORM

标签:现在   app   是什么   新手   面向   引擎   obj   编写   映射   

原文地址:https://www.cnblogs.com/skyflask/p/9363268.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!