使用QuerySet删除和查询单表

本文详细介绍了如何使用Django的QuerySet进行数据的删除和查询,包括删除全部数据、一行数据、多行数据,以及级联删除有外键的数据。在查询部分,涵盖了all(), filter(), get(), values(), values_list(), Q()函数等多种查询方法,还讨论了多表查询、关联查询、原生SQL查询等高级用法,帮助开发者深入理解Django数据库操作。" 94307182,8036894,删除递增有序链表中的元素:大于mink且小于maxk,"['数据结构', '链表操作', '算法设计']
摘要由CSDN通过智能技术生成

首先去掉关于路由斜杠的警告

修改主路由和子路由(斜杠加在主路由路径的尾巴上),然后再次运行项目。

(一)删除数据 

删除数据有3种方式:删除数据表的全部数据、删除一行数据和删除多行数据.

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

在终端Shell模式下执行命令:Types.objects.all().delete(),删除全部记录

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

将数据文件改成不带BOM的UTF-8编码格式

导入数据到表:python manage.py loaddata commodity_types_data.json

在终端Shell模式下执行命令:Types.objects.get(id=1).delete(),删除id为1的记录

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

删除全部“儿童用品” (目前只有三条记录满足条件)

在终端Shell模式下执行命令:Types.objects.filter(firsts='儿童用品').delete()

 

4、删除有外键的数据:delete() 

删除数据的过程中,如果删除的数据设有外键字段,就会同时删除外键关联的数据。

(1)准备模型和表

在index模块的models.py中定义以下2个模型类

在终端执行数据迁移命令:python manage.py makemigrations,生成数据迁移文件

在终端执行数据迁移命令:python manage.py migrate index 0001_initial,生成相应的数据表

(2)为index_personinfo准备测试数据 

利用批量添加数据命令,添加三条记录

 (3)为index_vocation准备测试数据

给“李红利”设置职业

(4)级联删除id=1的李红利 

在Shell模式下执行命令:PersonInfo.objects.get(id=1).delete()

(二)查询数据

1、给两张表准备查询数据 

(1)给index_personinfo表准备数据

(2)给index_vocation表准备数据 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值