我正在使用bulk_create插入数千个用户:
new_users_bulk_list.append(User(user_id=user_id, date_of_birth=dob))
if len(new_users_bulk_list) >= settings.BULK_LIMIT:
try:
User.objects.bulk_create(new_users_bulk_list)
new_users_bulk_list[:] = []
except Exception as e:
print("Error: Creating users " + str(e))和bulk_update来更新许多记录:
user_bulk.append(user_sequence)
if len(user_bulk) == settings.BULK_LIMIT:
bulk_update(user_bulk)
user_bulk[:] = []如果bulk_create或bulk_update无法创建/更新记录,我如何识别这些失败的记录?有没有一种方法可以捕获特定的失败记录?
谢谢,
发布于 2016-11-14 19:03:11
我认为这样做是不可能的。This的回答可能会给你一些启示。
我可能建议一种远非完美的解决办法:手动将new_users_bulk_list拆分成一定大小的批处理。这至少可以让你在一定程度上控制正在发生的事情和失败的事情。
https://stackoverflow.com/questions/40586851
复制相似问题