使用mongodb驱动程序更新新行的问题

时间:2014-02-06 11:34:39

标签: node.js mongodb

如何使用更新操作添加新行

我正在使用以下代码

statuscollection.update({
    id: record.id
  }, {
    id: record.id,
    ip: value
  }, {
    upsert: true
  }, function (err, result) {
    console.log(err);
    if (!err) {

      return context.sendJson([], 404);
    }
  });

在调用第一个时,我将添加该行   id:record.id

然后id:value然后我必须添加id:ggh

如何通过为我需要插入的每个文档调用此函数来添加每一个新行

1 个答案:

答案 0 :(得分:1)

根据代码的结构,您可能会遗漏一些概念。

  1. 在您可能不需要的情况下使用update
  2. 当MongoDB的主键为id时,您似乎提供了_id字段。如果这就是你的意思。
  3. 如果您打算在每次通话时添加新文档,那么您可能应该使用insert。将updateupsert一起使用的目的是将文档与查询条件匹配,如果文档存在则按指定更新字段,否则则插入包含指定字段的新文档。< / p>

    除非这实际上是你的目标,否则insert肯定是你所需要的。在这种情况下,您可能会依赖自动填充_id的值或自己提供自己的唯一值。除非您特别希望其他字段作为非唯一的标识符,否则您可能希望使用前面所述的_id字段。