python-Django使用orm的方式进行单表增删改操作

我爱海鲸 2021-06-13 00:13:42 python

简介python-Django使用orm的方式进行单表增删改操作,sql的查看与执行

1、项目搭建等等, python-Django使用orm的方式进行单表查询操作 


2、执行数据库查询相关,并查看sql:

from movie.models import Movie

Movie.objects.all()

Movie.objects.get(mid=147)

def showsql():

  ...:     from django.db import connection

  ...:     print(connection.queries[-1]['sql'])

showsql()

如图:

undefined

3、升降序查询:

Movie.objects.order_by("mid")

showsql()

Movie.objects.order_by("-mid")

如图:

undefined

4、日期查询,mid大于147:

Movie.objects.filter(mid__gt='147')#大于于等于Movie.objects.filter(mid__gte='147')   #小于Movie.objects.filter(mid__lt='147')  #小于等于Movie.objects.filter(mid__lte='147')  

如图:

undefined

5、其他查询

选择的查询:

Movie . objects. filter(mid__in=(147 ,149))

sql:SELECT `movie`.`mid`, `movie`.`mname`, `movie`.`mdesc`, `movie`.`mimg`, `movie`.`mlink` FROM `movie` WHERE `movie`.`mid` IN (147, 149) LIMIT 21

范围查询:

Movie . objects. filter(mid__range=(147 ,149))

sql:SELECT `movie`.`mid`, `movie`.`mname`, `movie`.`mdesc`, `movie`.`mimg`, `movie`.`mlink` FROM `movie` WHERE `movie`.`mid` BETWEEN 147 AND 149 LIMIT 21

6、添加数据:

m=Movie(mid=10001,mname='zhangsan',mdesc='hahaha',mimg='https://www.haijin.xyz/HaijinWeblogPhoto/uploadFiles/QQ%E6%88%AA%E5%9B%BE20210227172047.png',mlink='fdasfds')

m.save()

sql:INSERT INTO `movie` (`mid`, `mname`, `mdesc`, `mimg`, `mlink`) VALUES (10001, 'zhangsan', 'hahaha', 'https://www.haijin.xyz/HaijinWeblogPhoto/uploadFiles/QQ%E6%88%AA%E5%9B%BE20210227172047.png', 'fdasfds')

Movie . objects . create(mid=10002 , mname= ' lisi',mdesc= 'hahaha',mimg='l=igh_ 1ogo_ pcs' ,mlink='fdsafdsa')

sql:INSERT INTO `movie` (`mid`, `mname`, `mdesc`, `mimg`, `mlink`) VALUES (10002, ' lisi', 'hahaha', 'l=igh_ 1ogo_ pcs', 'fdsafdsa')

7、删除数据:

Movie. objects. filter( mid='10002' ).delete()

m=Movie(mid=10001,mname='zhangsan',mdesc='hahaha',mimg='https://www.haijin.xyz/HaijinWeblogPhoto/uploadFiles/QQ%E6%88%AA%E5%9B%BE20210227172047.png',mlink='fdasfds')

m.delete()

sql:DELETE FROM `movie` WHERE `movie`.`mid` IN (10001)

8、修改数据:

m = Movie. objects.last()

m.mname = 'zhangsan'

m.save()

sql:UPDATE `movie` SET `mname` = 'zhangsan', `mdesc` = 'hahaha', `mimg` = 'l=igh_ 1ogo_ pcs', `mlink` = 'fdsafdsa' WHERE `movie`.`mid` = 10002

Movie. objects. filter(mid= '10002') . update ( mname= 'wangwu' )   #推荐只用这一种

sql:UPDATE `movie` SET `mname` = 'wangwu' WHERE `movie`.`mid` = 10002





你好:我的2025