Django ORM 数据库增删改查

2023-07-11,,

Django ORM 数据库增删改查


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

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

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

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

# 获取表内所有数据  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="")
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()

Django ORM 数据库增删改查的相关教程结束。

《Django ORM 数据库增删改查.doc》

下载本文的Word格式文档,以方便收藏与打印。