orm-bulkcreate批量插入

使用bulkcreate方法实现批量插入

  • 定义一个列表
  • for 循环插入数量
  • models.表名(字段名=数据)生成对象(此处没有操作数据库),并且 一次性append进列表中
  • bulk_create(list)将列表一次性插入数据库

这个方法比起for循环然后直接插入数据库,要节省大量的时间

1 定义表模型
class Books(models.Model):
    title = models.CharField(max_length=32)
    price = models.DecimalField(max_digits=7,decimal_places=2)
    def __str__(self):
        return self.title

2 批量添加
from django.test import TestCase
import os

# Create your tests here.
if __name__ == '__main__':
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'D72_pager.settings')
    import django

    django.setup()

    from pagers import models

    booklist = []
    for i in range(1,101):
        booklist.append(models.Books(title='书籍%s'%i,price=30+i))
    models.Books.objects.bulk_create(booklist)

上一篇:1到1000的素数(质数),每行输出8个


下一篇:【那些年我们用过的Redis】还记得大明湖畔那些Redis数据吗?