mongoDB insert_many

前端之家收集整理的这篇文章主要介绍了mongoDB insert_many前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在设置主键的情况下
如果 insert_many(data)
data中有重复的主键
例如 'dynamic_id'为主键

a = [{
        "dynamic_id": "0","from": "meituan","title": "你真的会洗头吗?洗头一定要注意这几点,尤其中老年人",},{
    "dynamic_id" : "1","from" : "meituan","title" : "孕妇到底能不能吃冰淇淋?一起来看看吧!",{
    "dynamic_id" : "2","title" : "他把\"洗碗布\"当成宝贝吃了,吓坏了所有的人!",}]

如果数据库中当前有"dynamic_id" : "1","dynamic_id" : "2",这两条数据
执行insert_many(a)后,会新增"dynamic_id": "0"这条数据

但是 如果a的顺序为:1,2,0 则a中的所有数据都不能存入数据库
所以

  • 当使用insert_many时候 要遍历判断数据中是否每条存在于数据库中再做处理,对a进行遍历 使用insert_one逐条插入

for result_data_i in result_data:
if db.find_one({'dynamic_id':result_data_i['dynamic_id']}) == None:
    db.insert_one(result_data_i)
else:
    print('此条数据已经存在 不存入<a href="/tag/shujuku/" target="_blank" class="keywords">数据库</a>')</code></pre>

猜你在找的MongoDB相关文章