【问题标题】:Get the inserted document(s) in MongoDB 3.0在 MongoDB 3.0 中获取插入的文档
【发布时间】:2015-09-16 14:11:23
【问题描述】:

看起来像db.collection.insert() 以前是accept a callback function as last argument,但api已经改变了,现在它只返回一个writeResult对象,只报告插入的文档数量..

如何获取刚刚插入的实际文档(或至少是它们的 _id)?

更新

是的,我正在mongo shell 中运行我的脚本,现在我意识到我上面链接的另一个堆栈溢出问题是关于具有不同 API 的 node.js 驱动程序(虽然它也是 javascript 并且看起来相似)等等:

  1. mongo shell 从未报告过插入文档的详细信息,现在也没有报告过(如果我错了,请纠正我)
  2. 下面有一个公认的答案,展示了如何在 Python 中实现这一目标

【问题讨论】:

  • 你说的是shell吗?我认为您在谈论外壳,但正在使用 nodejs 驱动程序查看问题。 shell从来没有做过这样的事情。但如果你知道去哪里看,现在就可以了。

标签: mongodb mongo-shell


【解决方案1】:

shell 永远不会返回“_id”,但如果您使用任何脚本语言,这就是它可以在 python 中完成的方式:

insert_result = db.collection.insert({"_id":10, "key":"value"})

insert_result 将包含最近插入的文档的“_id”,即。 10

【讨论】:

    猜你喜欢
    • 2018-09-04
    • 1970-01-01
    • 2014-09-08
    • 1970-01-01
    • 2014-06-21
    • 1970-01-01
    • 2021-10-03
    • 2018-12-15
    • 1970-01-01
    相关资源
    最近更新 更多