django ORM 批量操作:批量插入bulk_create

时间:2023-03-10 01:58:48
django ORM 批量操作:批量插入bulk_create

django批量create数据:bulk_create(list实例)

项目中看到这样一句

models.表名.objects.using('数据库名').bulk_create(list实例)

其中,bulk_create实现了批量插入数据的功能:

在Django中需要向数据库中插入多条数据(list)。使用如下方法,每次save()的时候都会访问一次数据库。导致性能问题

1

2

3

for  i  in  resultlist:

p  =  Account(name = i)

p.save()

在django1.4以后加入了新的特性。使用django.db.models.query.QuerySet.bulk_create()批量创建对象,减少SQL查询次数。改进如下:

1

2

3

4

querysetlist = []

for  i  in  resultlist:

querysetlist.append(Account(name = i))

Account.objects.bulk_create(querysetlist)