Django ORM 数据库增删改查

Django ORM 数据库增删改查


# 创建、增加数据(推荐)
models.UserInfo.objects.create(username='root',password='123')
# 创建、增加数据
dic = {'username':'eric','password':'666'}
models.UserInfo.objects.create(**dic)
# 创建、增加数据
obj = models.UserInfo(username='xsk',password='123')
obj.save()

 

# 删除指定字段的行
models.UserInfo.objects.filter(id=4).delete()
# 删除指定多个字段的行
models.UserInfo.objects.filter(username='root',password="123").delete()

# 修改指定字段内的所有值变为888
models.UserInfo.objects.all().update(password="888")

# 修改指定id的行修改字段内的值
models.UserInfo.objects.filter(id="3").update(password="777")

# 获取表内所有数据  all()
# result返回的是QuerySet类型 => Django类 => []
# 全部都是UserInfo的对象[obj(id,username,password),obj,obj]
result = models.UserInfo.objects.all()
for row in result:
    print(row.id,row.username,row.password)
# 获取username字段中带有root的一行对象值 filter()
result = models.UserInfo.objects.filter(username='root')

# 获取username字段中带有root与password字段中带有123的一行对象值 filter()
result = models.UserInfo.objects.filter(username='root',password="123")
for row in result:
    print(row.id,row.username,row.password)

# 只获取一条数据
obj = models.UserInfo.objects.first(id=nid).first()


#
查看翻译成的sql语句 models.UserInfo.objects.all().query

其他

# .firest() 获取对象。没有则输出None,有则输出UserInfo object  (常用)
obj = models.UserInfo.objects.filter(username=u,password=p).first()
# .count() 获取个数,没有则输出0。
count = models.UserInfo.objects.filter(username=u,password=p).count()

猜你喜欢

转载自www.cnblogs.com/xiangsikai/p/10929914.html