九Django之ORM
Posted skyflask
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了九Django之ORM相关的知识,希望对你有一定的参考价值。
一、前言
用于实现面向对象编程语言里不同类型系统的数据之间的转换,换言之,就是用面向对象的方式去操作数据库的创建表以及增删改查等操作。
到目前为止,当我们的程序涉及到数据库相关操作时,一般操作流程如下:
- 创建数据库,设计表结构和字段;
- 使用 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的主要内容,如果未能解决你的问题,请参考以下文章