django中批量插入数据

打印 上一主题 下一主题

主题 886|帖子 886|积分 2658

1.什么是批量插入

在django中的orm给我们提供了一个bulk_create方法,批量创建插入数据!
2.为什么要使用批量插入

我们先来看不使用批量插入的情况:
  1. def book(request):
  2.     # 先给book插入10000条数据
  3.     for info in range(10000):
  4.         models.Book.objects.create(title='第%s书'%info)
  5.         # 再将所有的数据展示到前端页面
  6.     book_queryset = models.Book.objects.all()
  7.     return render(request,'book.html',locals())
  8. # 这里我们对于10000次的循环,采取了没循环一次插入一条数据,一直插入了10000次,然后再将数据全部查询处理,传输给前端页面!
  9. # 这里在页面加载的时候是非常耗时的,加载非常缓慢。因此,django的orm自带了一个bulk_create方法,大大缩减了我们插入数据的时间!
复制代码
3.如何批量插入bulk_create
  1. def book(request):
  2.     book_list=[] #先定义一个空列表
  3.         # 再生成10000个对象,此时并没有操作数据库
  4.     for info in range(10000):
  5.         book_obj=models.Book(price='%s'%info)
  6.                 # 把对象添加到列表里
  7.         book_list.append(book_obj)
  8.     models.Book.objects.bulk_create(book_list)  #调用了orm的bulk_create方法
  9.         # 展示到前端页面
  10.     book_queryset = models.Book.objects.all()
  11.     return render(request,'book.html',locals())
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

缠丝猫

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表