📜  MongoDB insertMany() 方法 – db.Collection.insertMany()(1)

📅  最后修改于: 2023-12-03 14:44:21.599000             🧑  作者: Mango

MongoDB insertMany() 方法 – db.Collection.insertMany()

简介

在 MongoDB 中,可以使用 insertMany() 方法在集合中插入多个文档。

  • insertMany() 方法可同时插入多个文档,以数组形式传递。

  • insertMany() 方法返回一个 InsertManyResult 对象,其中包含插入的文档的详细信息。

语法
db.collection.insertMany(
   [ <document 1> , <document 2>, ... ],
   {
      writeConcern: <document>,
      ordered: <boolean>
   }
)
  • db.collection:要插入文档的集合名称。
  • <document>:要插入的一个或多个文档,以 JSON 形式表示。可以插入多个文档,以逗号分隔,并且作为一个数组传递。
  • writeConcern:[可选] 一个文档,表示写入操作的写入确认级别。默认为 db.writeConcern.
  • ordered:[可选] 是否按顺序插入文档。默认为 true,按顺序插入。
示例

以下示例演示了如何使用 insertMany() 方法插入多个文档。

// 插入两个文档到 myCollection 集合中:
db.myCollection.insertMany([
   {
      name: "John",
      age: 25,
      status: "Active"
   },
   {
      name: "Jane",
      age: 30,
      status: "Inactive"
   }
]);

// 插入三个文档到 myCollection 集合中:
db.myCollection.insertMany([
   {
      name: "Tom",
      age: 23,
      status: "Active"
   },
   {
      name: "Jerry",
      age: 24,
      status: "Inactive"
   },
   {
      name: "Kate",
      age: 26,
      status: "Active"
   }
]);

以上示例中,insertMany() 方法将多个文档插入 myCollection 集合。每个文档都包含名称,年龄和状态信息。

返回值

insertMany() 方法返回一个 InsertManyResult 对象,其中包含插入的文档的详细信息。

例如,在以下示例中,可以将 insertMany() 方法返回的结果存储在变量中,并获取插入的文档数量和插入的文档的 ID:

var result = db.myCollection.insertMany([
   {
      name: "Mike",
      age: 22,
      status: "Active"
   },
   {
      name: "Lucy",
      age: 27,
      status: "Inactive"
   }
]);

print(result.insertedCount);        // 输出插入的文档数量(应该为2)
print(result.insertedIds);          // 输出插入的文档的ID数组

输出结果可能如下所示:

2
[
    ObjectId("5c45c871e3a2b8f233e6aa97"),
    ObjectId("5c45c871e3a2b8f233e6aa98")
]

可以看到,insertMany() 方法已成功插入两个文档,并在返回的结果中包含了它们的 ID。