相关疑难解决方法(0)

MongoDB错误代码11000和11001之间的区别

根据这个高度不完整的清单http://www.mongodb.org/about/contributors/error-codes/,它们都与重复密钥相关.但我无法得到11001错误.以下所有都引发了11000错误:

  • 插入_id已存在的文档
  • 插入具有重复字段的文档,其中字段具有复合唯一索引
  • 用所述复合唯一索引更新文档

因此,这完全违背了链接页面,其中11000表示_id更新(而不是插入)将发生11001.

所以我的问题是:11001何时发生?

mongodb

23
推荐指数
1
解决办法
2万
查看次数

使用Mongo NodeJS中的bulkinsert处理错误

我正在使用NodeJS和MongoDB和Express.我需要将记录插入到必须包含电子邮件字段的集合中.我正在使用insertMany函数来插入记录.插入唯一的电子邮件时,它可以正常工作,但是当输入重复的电子邮件时,操作会突然中断.

我尝试使用try catch打印错误消息,但插入重复的电子邮件后执行失败.我希望执行继续并存储重复项.我想获得插入/失败的记录的最终列表.

错误信息:

Unhandled rejection MongoError: E11000 duplicate key error collection: testingdb.gamers index: email_1 dup key: 
Run Code Online (Sandbox Code Playgroud)

有没有办法处理错误或除了insertMany还有其他方法吗?

更新:

电子邮件是我收藏中的一个独特字段.

mongodb node.js

9
推荐指数
2
解决办法
997
查看次数

如何使用PyMongo在重复键错误后继续插入

如果我还需要在MongoDB中插入文档

db_stock.update_one(document, {'$set': document}, upsert=True)
Run Code Online (Sandbox Code Playgroud)

.会做的工作(如果我错了,请随时纠正我)

但是,如果我有一份文件清单并希望将它们全部插入,那么最好的方法是什么呢?

这个问题有一个单一记录版本,但我需要它的大量版本,所以它是不同的.

让我重新提出我的问题.我有数百万个文档,其中很少可以存储.如何在几秒钟内将其余的存储在MongoDB中,而不是几分钟/小时?

python mongodb pymongo mongodb-query

8
推荐指数
2
解决办法
1909
查看次数

如何在列表中删除这些重复项(python)

biglist = 

[ 

    {'title':'U2 Band','link':'u2.com'}, 
    {'title':'ABC Station','link':'abc.com'}, 
    {'title':'Live Concert by U2','link':'u2.com'} 

]
Run Code Online (Sandbox Code Playgroud)

我想删除列表中的THIRD元素...因为它有"u2.com"作为副本.我不想要重复的"链接"元素.执行此操作的最有效代码是什么,以便产生以下结果:

biglist = 

[ 

    {'title':'U2','link':'u2.com'}, 
    {'title':'ABC','link':'abc.com'}
]
Run Code Online (Sandbox Code Playgroud)

我尝试了很多方法,包括使用许多嵌套的"for ... in ...."但这种效率非常低且太长.

python list

1
推荐指数
1
解决办法
2278
查看次数

标签 统计

mongodb ×3

python ×2

list ×1

mongodb-query ×1

node.js ×1

pymongo ×1