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’)

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。每个类对应一个数据表,每个属性对应一个字段

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)

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

2️⃣ 删除数据(Delete)

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

3️⃣ 修改数据(Update)

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

4️⃣ 查找数据(Retrieve)

queryset = models.Collect.objects.all()
queryset = models.Collect.objects.all().filter(id__gt=0) #查找所有id>0的数据
queryset = models.Collect.objects.filter(value=300).first()

Django基本数据库操作的更多相关文章

  1. Django 2.0 学习(16):Django ORM 数据库操作(下)

    Django ORM数据库操作(下) 一.增加表记录 对于表单有两种方式: # 方式一:实例化对象就是一条表记录france_obj = models.Student(name="海地&qu ...

  2. Django 2.0 学习(14):Django ORM 数据库操作(上)

    Django ORM 数据库操作(上) ORM介绍 映射关系: 数据库表名 ---------->类名:数据库字段 ---------->类属性:数据库表一行数据 ----------&g ...

  3. Django与数据库操作

    Django与数据库操作 数据库连接的方法 web 框架 django --- 自己内部实现 (ORM) + pymysql(连接) Flask,tornado --- pymysql SQLArch ...

  4. django models 数据库操作

    django models 数据库操作 创建模型 实例代码如下 from django.db import models class School(models.Model): pass class ...

  5. Django模型-数据库操作

    前言 前边记录的URLconf和Django模板全都是介绍页面展示的东西,也就是表现层的内容.由于Python先天具备简单而强大的数据库查询执行方法,Django 非常适合开发数据库驱动网站. 这篇开 ...

  6. django中数据库操作——in操作符

    django一对多关系中,为了实现按照一端查询多端,之前都是用extra操作符,经过查看官方文档还有in这个操作符,用这个实现更简单.直接上代码: 根据查询条件模糊查询所有符合条件的机架列表,然后根据 ...

  7. django models数据库操作

    一.数据库操作 1.创建model表         基本结构 1 2 3 4 5 6 from django.db import models     class userinfo(models.M ...

  8. 03: Django Model数据库操作

    目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...

  9. django 快速数据库操作,不用SQL语句

    配置models文件 # -*- coding: utf-8 -*- from __future__ import unicode_literals from django.db import mod ...

  10. django学习-数据库操作接口API--(CRUD)

    初试API(数据库操作接口CRUD) 现在我们进入交互式python命令行,尝试一下django为你创建的各种API,通过以下命令打开python命令行: py -3 manage.py shell进 ...

随机推荐

  1. Python代码相似度计算(基于AST和SW算法)

    代码相似度计算将基于AST和Smith-Waterman算法 AST (抽象语法树) AST即Abstract Syntax Trees,是源代码的抽象语法结构的树状表示,树上的每个节点都表示源代码中 ...

  2. 对doccano自动标注使用的默认UIE模型进行微调以提高特定领域的实体识别能力,提高标注速度

    虽然doccano的自动标注使用默认的UIE模型可以识别出一定的实体,但是在特定领域或者因为实体类别名不能被理解很多实体是识别不了的,所以我们可以通过自己标注的数据对模型进行微调来满足我们Auto L ...

  3. C51笔记-郭天祥-第二章 从点灯大师开始

    第2章  Keil软件的使用及流水灯设计 Keil的用法:用Keil建立工程: 工程配置: C51单片机程序软件仿真.单步.全速.断点设置和变量查看等: 用一个完整的C51程序操控LED亮灭: 调用库 ...

  4. 用go设计开发一个自己的轻量级登录库/框架吧(项目维护篇)

    用go设计开发一个自己的轻量级登录库/框架吧(项目维护篇) 本篇将开始讲讲开发库/框架的最开始阶段,也就是搭建一个项目 源码:weloe/token-go: a light login library ...

  5. 2021-04-16:摆放着n堆石子。现要将石子有次序地合并成一堆,规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。求出将n堆石子合并成一堆的最小得分(或最大得分)合

    2021-04-16:摆放着n堆石子.现要将石子有次序地合并成一堆,规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分.求出将n堆石子合并成一堆的最小得分(或最大得分)合 ...

  6. 2021-05-16:时间复杂度必须是logN,如何求阶乘从右向左第一个不为零的数?

    2021-05-16:时间复杂度必须是logN,如何求阶乘从右向左第一个不为零的数? 福大大 答案2021-05-16: 这道题logN的解法是大步小步法,网上非常难找.另外论代码简洁度,明显是我的代 ...

  7. c3p0的配置及简单应用

    首先简单了解一下JDBC和c3p0 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸 ...

  8. 避坑版-OpenSSH 用户名枚举漏洞(CVE-2018-15473)

    介绍: OpenSSH 7.7前存在一个用户名枚举漏洞,通过该漏洞,攻击者可以判断某个用户名是否存在于目标主机中,在复现过程中遇到了很多坑,这里我就把遇到坑和解决方法告诉大家!!! 漏洞环境: 靶机: ...

  9. 2023-05-26:golang关于垃圾回收和析构函数的选择题,多数人会选错。

    2023-05-26:golang关于垃圾回收和析构的选择题,代码如下: package main import ( "fmt" "runtime" " ...

  10. 详解RocketMQ 顺序消费机制

    摘要:顺序消息是指对于一个指定的 Topic ,消息严格按照先进先出(FIFO)的原则进行消息发布和消费,即先发布的消息先消费,后发布的消息后消费. 本文分享自华为云社区<RocketMQ 顺序 ...