django基础——数据库的增删改查

import django,os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'dj_Test.settings')  #指定django的配置文件
django.setup()   #链接数据库
from user import models
from django.db.models import Q   #查询all,必须引进Q
#新增数据的两种方法
# models.Nav.objects.create(name='我的日记1')
# models.Nav.objects.create(name='我的日记2')
# nav_obj=models.Nav(name='我的心情',is_delete=1)
# nav_obj.save()

#查询
# 1.get:get方法查询时必须保证结果只有一条,否则会报错
# result=models.Nav.objects.get(name='我的心情') # result3=models.Nav.objects.get(is_delete=1) # result2=models.Nav.objects.get(id=1) # print(type(result)) #是一个类 # print(result2) # print(result.id) # print(result.update_time) #查询到对应的结果 # print(result3) 结果有多条时报错 #查询2 filter,可以查多条 # result1=models.Nav.objects.filter(is_delete=1) # result=models.Nav.objects.filter(is_delete=1,name='我的心情') #多重条件时 ,相当于and # result2=models.Nav.objects.filter(name__contains='我的',id__gt=0) #字段名__contains:模糊查询,id__gt=0:id字段>0, # #id_gte=1:大于等于1,id_lt=1:小于1,id_lt=lte:小于等于1 # result3=models.Nav.objects.filter(is_delete__range=[1,5]) #查询一个字段在某个范围之间的数据 # result4=models.Nav.objects.filter(id__in=[1,2,3,4,5]) #in条件查询 # result4=models.Nav.objects.filter(id__in=[1,2,3,4,5]) .count()统计数量 # result5=models.Nav.objects.exclude(id=1) #除了id=1的都查询出来,exclude排除 # print(result) # print(result2) # print(result3) # print(result4) # print(result5) result6=models.Nav.objects.filter(Q(name__contains='6')|Q(name__contains='3')) #or 查询,使用前要先导入Q print(result6) all=models.Nav.objects.all() #获取表里所有数据 all2=models.Nav.objects.all().filter(name__contains='6') #可以在结果中继续筛选,可无限筛选下去 #修改 # n=models.Nav.objects.get(is_delete=1) #找到这条元素 get(pk=1):查找主键=1 # n.img='article/1.jpg' #修改数据 # n.save() #修改完保存 # models.Nav.objects.all().update(is_delete=0) #更新表里所有数据 models.Article.objects.filter(is_delete=1).update(img='article_img/1.jpg') #根据条件更改数据 # 删除 # models.Nav.objects.all().delete() #删除表里所有数据 # models.Nav.objects.filter(id__lt=3).delete() #根据条件删除数据 # n=models.Nav.objects.get(id=3) #parimy key 单个删除 # n.delete() models.Article.objects.create(title='django教程',content='django教程111',nav_id=8) models.Article.objects.create(title='django教程',content='django教程111',nav_id=9) models.Article.objects.create(title='django教程',content='django教程111',nav_id=10) models.Article.objects.create(title='django教程',content='django教程111',nav_id=11) models.Article.objects.create(title='django教程',content='django教程111',nav_id=12) models.Article.objects.create(title='django教程',content='django教程111',nav_id=13) # # 同上: # nav=models.Nav.objects.get(name='我的日记5') # models.Article.objects.create(title='django教程',content='django教程111',nav_id=7)

 数据变更不需要执行生效的命令

猜你喜欢

转载自www.cnblogs.com/hancece/p/11721498.html
今日推荐