马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
2022-09-30
删除数据:
方式一:
打开pycharm,进入虚拟环境,进入shell环境(python manage.py shell)。
删除数据,接上面的笔记——“学习笔记——Django项目的新增数据、修改数据”
导入模块:- from book.models import BookInfo1
复制代码 查找到要删除的数据:- book = BookInfo1.objects.get(id = 3)
复制代码 进行删除操作:-----------------------
方式二:
同理导入模块,找到并删除的操作- BookInfo1.objects.filter(id = 5).delete()
复制代码 查询是否删除,可以先打开终端,进入MySQL(mysql -uroot -p),输入密码,进入存放表的数据库,先查看表的信息存储,进行删除操作后,再次查看表中记录中指定的记录是否删除成功(select * from book_bookinfo1)
-----------------------------------------------------
在shell中查询数据(基础查询):
1、查询指定的数据
导入模块后,进行查询- BookInfo1.objects.get(id = 1)
复制代码 说明:在shell中执行该语句,返回的是这个表中的一个对象。
如果查询的数据在存储表中不存在,那么会出现异常,因此此处的查询可以增加一个“try...except”捕获异常的结构。例:- try:
- BookInfo1.objects.get(id = 100)
- except Exception as e:
- print(e)
复制代码 捕获到的异常为:

可增加系统功能的强健性。
2、查询表中的所有记录
导入模块 说明:执行该语句,返回的包含所有对象的一个列表。这里的“每一个对象”指的就是插入的“每一条记录”。
3、查询表里面记录的个数:
导入模块- BookInfo1.objects.count()
复制代码 或者是- BookInfo1.objects.all().count()
复制代码 输出的结果是一样的。
-----------------------------
filter、get、exclude查询
说明:
filter: 查询返回的是一个结果集列表,列表内的个数可以为0/1/n
get: 查询返回的结果是一个对象
exclude: 查询除了符合条件之外的记录,返回的是一个列表。
(1)查询编号为1的图书- BookInfo1.objects.get(id=1)
复制代码 注:objects相当与“增删改查”的代理。
也可以为:- BookInfo1.objects.filter(id__exact = 1)
复制代码 注:其中“字段名__检索要求”是标准写法。
(2)查询书籍名称中包含“小”的图书- BookInfo1.objects.filter(name__contains = "小")
复制代码 (3)查询数据名称末尾是“传”的图书- BookInfo1.objects.filter(name__endswith = "传")
复制代码 注:此处是两个下划线。
(4)查询书籍名称为空的记录- BookInfo1.objects.filter(name__isnull = True)
复制代码 注:此处判断为空的结果是一个boolean类型的值。
(5)查询编号为1,3,5的图书- BookInfo1.objects.filter(id__in = [1,3,5])
复制代码 (6)查询大于编号3的图书- BookInfo1.objects.filter(id__gt = 3)
复制代码 说明:gt:是大于;gte:是大于等于;lt:是小于;lte:是小于等于。
(7)查询除了编号为3的图书- BookInfo1.objects.exclude(id__exact = 1)
复制代码 (8)查询出版时间在2000年的图书- BookInfo1.objects.filter(pub_date__year = "2000")
复制代码 注:判断“年”时,要使用的是“__year”
(9)查询出版时间在“2000-01-01”之后的图书- BookInfo1.objects.filter(pub_date__gt = "2000-01-01")
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |