栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

使用QuerySet删除数据表

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用QuerySet删除数据表

数据库记录

删除数据 1、删除全部数据:all()与delete()

导出数据库脚本 - babies.sql



输入python manage.py shell指令,开启Shell模式

输入from commodity.models import Types
Types.objects.all().delete(),删除全部记录


重新传入数据
右击数据库选择运行sql文件

第二种导入方法
导入数据到表:python manage.py loaddata commodity_types_data.json

2、删除一行数据:get()与delete()

执行命令:Types.objects.get(id=1).delete(),删除id为1的记录

3、删除多行数据:filter()与delete()

删除全部“儿童用品”

执行命令:Types.objects.filter(firsts=‘儿童用品’).delete()

4、删除有外键的数据:delete() 在index模块的models.py中定义以下2个模型类

from django.db import models

class PersonInfo(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=20)
age= models.IntegerField()
hireDate = models.DateField()

def __str__(self):
    return  self.name
class Meta:
    verbose_name ='人员信息'

class Vocation(models.Model):
id = models.AutoField(primary_key=True)
job = models.CharField(max_length=20)
title = models.CharField(max_length=20)
payment = models.IntegerField(null=True,blank=True)
name= models.ForeignKey(PersonInfo,on_delete=models.CASCADE,related_name=‘ps’)

def __str__(self):
    return  str(self.id)
class Meta:
    verbose_name ='职业信息'


输入exit()退出

执行数据迁移命令:python manage.py makemigrations


执行数据迁移命令:python manage.py migrate index 0001_initial

查看生成的两张表:index_personinfo和index_vocation

(2)为index_personinfo准备测试数据

python manage.py shell
添加数据命令

(3)为index_vocation准备测试数据


上面我的不好看,下面是正确步骤

(4)级联删除id=1的张玲

执行命令:PersonInfo.objects.get(id=1).delete()

删除成功,总共删除了2条数据,1条是index_personinfo表的记录,1条是index_vocation表的记

删除结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/951696.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号