在mongodb进行数据库操作的时候触发异常
  pymongo Error: pymongo.errors.BulkWriteError: batch op errors occurred

这种问题出现在调用insert_many方法,原因可能有两种:
  1. 数据库某个字段被设置成了unique,在插入的时候这个字段出现了重复;
  2. insert_many使用时所插入的文档列表中存在指向同一个对象的多个元素,这个本质上跟第一种情况是一样的,因为每个元素被插入之后都会被添加了一个_id字段,而相同的指向相当于同一个_id被插入了两次,就会出现上述的问题。

解决办法是对这些unique字段预先进行判断,这是pymongo与mongoengine的区别,mongoengine是在建模的时候就会设置好,但pymongo除非报错,否则很难知道这个问题。

参考:
https://stackoverflow.com/questions/43073956/pymongo-errors-bulkwriteerror-batch-op-errors-occurred-mongodb-3-4-2-pymongo
https://stackoverflow.com/questions/38361916/pymongo-insert-many-bulkwriteerror

相关文章:

  • 2022-12-23
  • 2021-04-03
  • 2022-12-23
  • 2021-07-08
  • 2022-02-16
  • 2021-10-09
  • 2022-02-06
  • 2022-12-23
猜你喜欢
  • 2021-11-23
  • 2021-12-29
  • 2021-09-02
  • 2022-12-23
  • 2021-11-12
  • 2021-08-21
  • 2022-12-23
相关资源
相似解决方案