Python Django ORM

本文介绍了Python Django ORM,探讨了ORM的概念、优势与劣势,详细阐述了字段类型、字段选项、关系字段类型以及如何生成数据库和导入数据。Django ORM提供了一种面向对象的方式来操作数据库,简化了数据库操作并实现了数据库的解耦。
摘要由CSDN通过智能技术生成

一、ORM介绍


1.什么是ORM ?  ORM 全拼Object-Relation Mapping.

中文意为 对象-关系映射.

在MVC/MVT设计模式中的Model模块中都包括ORM
2.ORM优势
(1)只需要面向对象编程, 不需要面向数据库编写代码.

对数据库的操作都转化成对类属性和方法的操作.
不用编写各种数据库的sql语句.
(2)实现了数据模型与数据库的解耦, 屏蔽了不同数据库操作上的差异.

不在关注用的是mysql、oracle...等.
通过简单的配置就可以轻松更换数据库, 而不需要修改代码.
3.ORM劣势
相比较直接使用SQL语句操作数据库,有性能损失.
根据对象的操作转换成SQL语句,根据查询的结果转化成对象, 在映射过程中有性能损失.
4.ORM和数据库关系:
在Django中model是你数据的单一、明确的信息来源。它包含了你存储的数据的重要字段和行为。通常,一个模型(model)映射到一个数据库表.

基本情况:

每个模型都是一个Python类,它是django.db.models.Model的子类。

模型的每个属性都代表一个数据库字段。

综上所述,Django为您提供了一个自动生成的数据库访问API。

 

二、ORM用法

1.字段类型

属性名

  • 不允许使用python的保留关键字
  • 不允许使用mysql的保留关键字
  • 不允许使用连续的下划线,因为Django的查询语法就是连续的下划线
字段类型 描述 MySQL类型
AutoField 自动增长的IntegerField, 不指定时Django会自动创建属性名为id的自动增长属性 INT AUTO_INCREMENT
BigAutoField    
Binary 二进制  
BooleanField 布尔字段,值为True或False  
NullBooleanField 支持Null、True、False三种值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值