Django基本数据库操作

Django基本数据库操作


文章目录

👨‍🏫内容一:基本数据库配置


👉Django是一个流行的Python Web框架,它可以使用不同的数据库引擎来存储和管理数据。Django默认使用sqlite数据库,但是你也可以配置它使用mysql数据库。这里我将配置的是本地的Mysql数据库👇
1️⃣ 安装mysqlclient库,它是一个Python的数据库接口驱动,可以让Django和mysql进行通信。你可以使用pip命令来安装它➡️ pip install mysqlclient
2️⃣在Django项目的settings.py 文件中,修改DATABASES字典⬇️

ENGINE为'django.db.backends.mysql'

NAME为你要连接的数据库名字

USER为数据库登录的用户名

PASSWORD为对应的密码

HOST为数据库服务器的位置(一般为'127.0.0.1')

PORT为数据库服务器端口(一般为'3306')

clike 复制代码
DATABASES = {
   'default': {
       'ENGINE': 'django.db.backends.mysql', 
       'NAME': 'test',
       'USER': 'root',
       'PASSWORD': 'xxxxxx',
       'HOST': '127.0.0.1',
       'PORT': '3306',
   }
}

3️⃣在Django项目的models.py文件中,定义你的数据模型类,继承自models.Model。每个类对应一个数据表,每个属性对应一个字段

clike 复制代码
from django.db import models

class Collect(models.Model):
   value = models.IntegerField(verbose_name="气味数值")
   

4️⃣使用python manage.py makemigrations 命令,创建迁移文件,这些文件会记录你对数据模型的修改。如果有多个应用,你可以指定应用名来只创建该应用的迁移文件。
5️⃣使用python manage.py migrate 命令,将迁移文件应用到数据库中,这样就会在mysql数据库中创建对应的数据表。如果有多个应用,你也可以指定应用名来只应用该应用的迁移文件。


🌸🌸🌸🌷🌷🌷💐💐💐🌷🌷🌷🌸🌸🌸

👨‍🔬内容二:ORM基本操作


1️⃣ 新增数据(Create)

clike 复制代码
  models.Collect.objects.create(value=100)   #新增value=100数据
  models.Collect.objects.create(**{"value": 200})  #新增value=200数据


2️⃣ 删除数据(Delete)

clike 复制代码
  models.Collect.objects.filter(value=200).delete()   #删除所有value=200的数据
  models.Collect.objects.all().delete()  #删除所有数据


3️⃣ 修改数据(Update)

clike 复制代码
  models.Collect.objects.filter(value=200).update(value=300)  #将value=200的数据都改成value=300
  models.Collect.objects.all().update(value=300)  #将所有数据更新为value=300


4️⃣ 查找数据(Retrieve)

clike 复制代码
queryset = models.Collect.objects.all()
queryset = models.Collect.objects.all().filter(id__gt=0)  #查找所有id>0的数据
queryset = models.Collect.objects.filter(value=300).first()
相关推荐
苏苏susuus3 小时前
核密度估计(KDE)与高斯核(概念分享)
人工智能·python·ocr
Databend3 小时前
Databend 原生数据血缘:追溯指标来源,检查变更影响
大数据·数据库·sql
镜舟科技4 小时前
Semantic View 技术解析(二):业务口径如何进入数据库执行路径
数据库·sql·agent
宸津-代码粉碎机4 小时前
微服务线上踩坑复盘:接口超时、负载倾斜隐形问题根治方案(生产级配置)
java·大数据·人工智能·python·spring
速易达网络4 小时前
Python + Tkinter 实现基于 TCP/IP 的局域网聊天工具
python·信息与通信
多多鼠4 小时前
System Prompt 的“版本漂移”问题:从变更管理到 A/B 测试体系
开发语言·网络·人工智能·python·langchain
TechWJ4 小时前
没有公网 IP 也想远程连 PostgreSQL?从本地数据库到固定 TCP 地址完整配置
大数据·数据库·网络安全·postgresql·内网穿透
昔我往昔4 小时前
pytest日志问题排查记录
python·pytest
Python自动化直播4 小时前
用 Python 爬虫给 AI 直播间做数据反馈机制
人工智能·python·ai·直播
得物技术5 小时前
指标平台:从语义底座到智能消费的实践路径|得物技术
数据库·人工智能·ai编程