我正在尝试更新我在 mlab 上托管的 mongodb 实例中的集合。
我正在运行以下代码:
...
db.collectionOne.insert(someArrayOfJson)
db.collectionTwo.insert(someArrayOfJson)
第一个集合得到更新,第二个集合没有。
使用相同/不同的有效 Json 数组会产生相同的结果。只有第一个得到更新。
我看过这个问题duplicate document - same collection我能理解为什么它行不通。但我的问题是跨越两个单独的集合?
当在 mlab 上手动插入数据时,文档会很好地进入第二个集合 - 所以我相信它允许跨不同集合的重复数据。
我是 mongo 的新手 - 我是否遗漏了一些简单的东西?
更新:
响应是:
22:01:53.224 [main] DEBUG org.mongodb.driver.protocol.insert - Inserting 20 documents into namespace db.collectionTwo on connection [connectionId{localValue:2, serverValue:41122}] to server ds141043.mlab.com:41043
22:01:53.386 [main] DEBUG org.mongodb.driver.protocol.insert - Insert completed
22:01:53.403 [main] DEBUG org.mongodb.driver.protocol.insert - Inserting 20 documents into namespace db.collectionOne on connection [connectionId{localValue:2, serverValue:41122}] to server ds141043.mlab.com:41043
22:01:55.297 [main] DEBUG org.mongodb.driver.protocol.insert - Insert completed
但是没有为第二个数据集输入数据库。
更新 v2:
如果我在两个插入之后进行调用,例如:
db.createCollection("log", { capped : true, size : 5242880, max : 5000 } )
数据收集得到更新!
最佳答案
什么是总数据大小???
这是对我有用的示例代码
db.collectionOne.insert([{"name1":"John","age1":30,"cars1":[ "Ford", "BMW", "Fiat"]},{"name1 ":"John","age1":30,"cars1":[ "Ford", "BMW", "Fiat"]}]); db.collectionTwo.insert([{"name2":"John","age2":30,"cars2":[ "Ford", "BMW", "Fiat"]},{"name2":"John", “age2”:30,“cars2”:[“福特”,“宝马”,“菲亚特”]}])
如果数据更多,您可以使用“Mongo Bulk Write Operations”,也可以引用 Mongo DB 限制和阈值
关于database - 多次插入 mongodb - 只有第一个集合得到更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52964315/