赞
踩
https://edu.csdn.net/course/detail/36074
https://edu.csdn.net/course/detail/35475
目录* Django ORM
+ ORM实操之数据库迁移
+ ORM实操之字段的修改
+ ORM实操之数据的增删改查
+ 数据库同步
+ ORM创建表关系
ORM:对象映射关系程序
通过orm将编程语言的对象模型和数据库的关系模型建立映射关系,这样我们在使用编程语言对数据库进行操作的时候可以直接使用编程语言的对象模型进行操作就可以了,而不用直接使用sql语言;
python与MySQL映射关系
Python | 映射 | MySQL |
---|---|---|
类 | -------> | 表 |
对象 | -------> | 表里面的数据 |
对象点属性 | -------> | 字段对应的值 |
✨我们的模型类需要写在应用下的models.py文件中
# SQL原生语句和ROM创建的区别
class User(models.Model):
# id int primary key auto\_increment
id = models.AutoField(primary_key=True)
# name varchar(32)
name = models.CharField(max_length=32) # CharField必须要加max\_length参数
# age int
age = models.IntegerField()
✨✨✨数据库迁移命令(重点)
models.py
文件执行了和数据库相关的命令,就重新执行下面这两条命令:python3 manage.py makemigrations、python3 manage.py migrateRUN manage.py Task
,输入makemigrations
1.将数据库修改操作先记录到"本本"(对应应用下的migrations文件夹)
python3 manage.py makemigrations
# 执行完,产生一个文件,用来记录
2.真正的执行数据库迁移操作,同步到数据库
python3 manage.py migrate
# 执行完会在数据库中产生Django所需的依赖表,自动创建的
# 自己创建的表user以'应用名\_表名'的形式创建,app01\_user
✨✨不指定id字段和主键等,ORM会自动创建id
# 如果你不指定主键 那么orm会自动帮你创建一个名为id的主键字段
class user(models.Model):
username = models.CharField(max_length=32)
# 就不用写id了···,需要定制id,就写上~
# 原来的表
class user(models.Model):
username = models.CharField(max_length=32)
# 增加字段(两种方法)
password = models.IntegerField('密码',null=True) # 该字段可以为空
is_delete = models.IntegerField(default=0) # 默认值
# 修改字段
直接改代码,然后执行makemigrations,数据库迁移
# 删除
直接删除或者注释掉代码,然后执行makemigrations,数据库迁移
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。