📅  最后修改于: 2023-12-03 14:52:26.944000             🧑  作者: Mango
MongoDB 是一个基于文档的数据库,而推送数据是向文档中插入数据的一种方式。在 MongoDB 中,可以使用 db.collection.insert()
方法向集合(即文档)中插入文档。
以下是向集合中插入单个文档的基本语法:
db.collection.insert(
<document>,
{
writeConcern: <document>,
ordered: <boolean>
}
)
其中,<document>
是要插入的文档。例如,以下是向 mycollection
集合中插入一个文档的示例:
db.mycollection.insert({
name: "John",
age: 30,
city: "New York"
})
如果想指定写入关注级别(即写入的安全级别),可以使用 writeConcern
参数。此外,还可以使用 ordered
参数指定是否在按顺序插入文档时,当遇到第一个错误时就停止插入操作。默认情况下,ordered
参数为 true
,表示按顺序插入文档并在遇到错误时停止插入操作。
如果想向集合中插入多个文档,可以使用 db.collection.insertMany()
方法。以下是插入多个文档的基本语法:
db.collection.insertMany(
[ <document 1> , <document 2>, ... ],
{
writeConcern: <document>,
ordered: <boolean>
}
)
其中,[ <document 1> , <document 2>, ... ]
是要插入的多个文档的数组。例如,以下是向 mycollection
集合中插入多个文档的示例:
db.mycollection.insertMany([
{
name: "John",
age: 30,
city: "New York"
},
{
name: "Jane",
age: 25,
city: "Toronto"
},
{
name: "Bob",
age: 40,
city: "Los Angeles"
}
])
同样地,如果想指定写入关注级别和顺序,可以使用 writeConcern
和 ordered
参数。
向集合中插入文档时,MongoDB 会返回一个包含以下属性的结果对象:
acknowledged
(bool):表示操作是否被确认。如果为 true
,表示操作被确认,如果为 false
,表示操作未被确认。insertedIds
(array):表示已插入文档的 _id
值数组。对于单个文档插入,该数组只包含一个 _id
。例如,以下是向 mycollection
集合中插入单个文档并输出结果的示例:
const result = db.mycollection.insert({
name: "John",
age: 30,
city: "New York"
})
printjson(result)
// 输出:{ "acknowledged" : true, "insertedId" : ObjectId("5f8e6b47509db755d0b28432") }
以上就是在 MongoDB 文档中推送数据的基本方法。总的来说,很容易理解并且非常灵活。想进一步了解 MongoDB 的话,可以查看 官方文档。