gpt4 book ai didi

django - Django bulk_create 在插入行时是否锁定整个表?

转载 作者:行者123 更新时间:2023-11-29 13:25:38 30 4
gpt4 key购买 nike

我正在使用 Django 1.6 和 postgres,对特定表的 bulk_create 会锁定整个表吗? (在我的例子中,我正在批量创建 10,000 行,这需要大约 10 秒)我已经测试过这个,同时每半秒创建一次对象,而批量创建正在发生并且这些个人创建都没有挂起但我只是想制作当然。谢谢!

最佳答案

bulk_create 以高效的方式将提供的对象列表插入到数据库中(一般只有 1 个查询,无论有多少对象),因此它阻塞表以执行 atomic交易

用法:bulk_create(obj_list, batch_size=None)

batch_size 参数控制在单个查询中创建多少个对象。默认是在一批中创建所有对象,SQLite 除外,默认情况下每个查询最多使用 999 个变量。

以下article还可以让您了解 bulk_create 相对于其他方法有多快。

关于django - Django bulk_create 在插入行时是否锁定整个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34410110/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com