MongoDB 插入文档

在本教程中,我们将了解如何将文档插入集合中。我们将在多个示例的帮助下理解这一点。

将文档插入集合的语法:

db.collection_name.insert()

让我们举一个例子来理解这一点。

MongoDB 使用insert()插入文档示例

这里我们将文档插入名为beginnersbook的集合中。下面示例中的字段course是一个包含多个键值对的数组。

db.beginnersbook.insert(  
   {  
     name: "Chaitanya",  
     age: 30,
     email: "[email protected]",
     course: [ { name: "MongoDB", duration: 7 }, { name: "Java", duration: 30 } ]
   }  
)

您应该看到一条成功的写消息,如下所示:

WriteResult({ "nInserted" : 1 })

如果集合不存在,则insert()方法创建集合,但如果集合存在,则将文档插入其中

MongoDB 插入文档

验证:

您还可以通过键入以下命令验证文档是否已成功插入:

db.collection_name.find()

在上面的示例中,我们将文档插入名为beginnersbook的集合中,因此命令应为:

> db.beginnersbook.find()
{ "_id" : ObjectId("59bce797668dcce02aaa6fec"), "name" : "Chaitanya", "age" : 30, 
"email" : "[email protected]", "course" : [ { "name" : "MongoDB", 
"duration" : 7 }, { "name" : "Java", "duration" : 30 } ] }

MongoDB 示例:在集合中插入多个文档

要在集合中插入多个文档,我们定义一个文档数组,稍后我们在数组变量上使用insert()方法,如下例所示。这里我们在名为students的集合中插入三个文档。此命令将在students集合中插入数据,如果集合不存在,则它将创建集合并插入这些文档。

var beginners =
 [
    {
    "StudentId" : 1001,
    "StudentName" : "Steve",
        "age": 30
    },
    {
    "StudentId" : 1002,
    "StudentName" : "Negan",
        "age": 42
    },
    {
    "StudentId" : 3333,
    "StudentName" : "Rick",
        "age": 35
    },
];
db.students.insert(beginners);

你会看到这个输出:

BulkWriteResult({
        "writeErrors" : [ ],
        "writeConcernErrors" : [ ],
        "nInserted" : 3,
        "nUpserted" : 0,
        "nMatched" : 0,
        "nModified" : 0,
        "nRemoved" : 0,
        "upserted" : [ ]
})

如您所见,它在nInserted前面显示数字 3。这意味着此命令已插入 3 个文档。

MongoDB 插入文档

验证文档是否在集合中。运行此命令:

db.students.find()

你知道吗? 您可以以 JSON 格式打印输出数据,以便您可以轻松阅读。要以 JSON 格式打印数据,请运行命令db.collection_name.find().forEach(printjson)

所以在我们的例子中命令是这样的:

db.students.find().forEach(printjson)

在下面的屏幕截图中,您可以看到差异。首先,我们使用普通的find()方法打印文档,然后使用 JSON 格式打印相同集合的文档。 JSON 格式的文档简洁易读。

MongoDB 插入文档

我们还可以使用 MongoDB 2.6 中引入的 New Bulk API 插入多个文档。我们将在 Bulk API 教程中了解到这一点。

赞(0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址