Mongodb 如何删除从csv导入的ObjectId的引用
我已将csv文件导入到集合中 我的文档保存得很好Mongodb 如何删除从csv导入的ObjectId的引用,mongodb,Mongodb,我已将csv文件导入到集合中 我的文档保存得很好 "_id" : "ObjectID(53874d952f92e2af1a5f0afb)" 我无法对此提出质疑 有人能帮我删除ObjectId的引号吗CSV不能完全保留字段的类型,并且可以显示字符串和整数(不是Object\u id)。如果我是你,我会用最合适的语言编写一个解析器,并在ObjectID中转换你的id 另一种方法(如果您的_id不重要),您可以将csv标题中的_id更改为任何其他名称,并且在导入期间,mongo将创建新id,然后您将
"_id" : "ObjectID(53874d952f92e2af1a5f0afb)"
我无法对此提出质疑
有人能帮我删除
ObjectId
的引号吗CSV不能完全保留字段的类型,并且可以显示字符串和整数(不是Object\u id)。如果我是你,我会用最合适的语言编写一个解析器,并在ObjectID中转换你的id
另一种方法(如果您的_id不重要),您可以将csv标题中的_id更改为任何其他名称,并且在导入期间,mongo将创建新id,然后您将转到并删除您创建的字段
下次您可以使用来保留类型。假设您的集合名称为myCollection。 这样做:
db.myCollection.forEach(function(doc) {
var oldId = doc._id;
var newIdStr = doc._id.replace(/ObjectID\((\w+)\)/g,"\$1");
var newObjId = ObjectId(newIdStr);
doc._id = newObjId;
db.myCollection.save(doc);
db.myCollection.remove({_id:oldId});
});
我再次面临同样的问题。我想我们无法导入csv文件。需要导出.json文件,这里没有其他解决方案,它没有更新,它正在使用新id添加新记录,但是是的,我们需要删除旧记录。我已经纠正了这一点。