MongoDB-CN-Manual
搜索文档…
插入文档
该页面提供了MongoDB中插入操作的示例。
建立集合
如果该集合当前不存在,则插入操作将创建该集合。

插入一个文件

db.collection.insertOne()将单个文档插入集合中。
以下示例将一个新文档插入库存集合。 如果文档未指定**_id字段,则MongoDB将具有ObjectId值的_id**字段添加到新文档中。 请参阅插入行为
1
db.inventory.insertOne(
2
{ item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }
3
)
Copied!
insertOne()返回一个文档,其中包含新插入的文档的_id字段值。有关返回文档的示例,请参阅db.collection.insertOne() reference引用。
要检索刚刚插入的文档,查询集合:
1
db.inventory.find( { item: "canvas" } )
Copied!

插入多个文件

3.2版中的新功能
db.collection.insertMany()可以将多个文档插入一个集合中。 将文档数组传递给该方法。
下面的示例将三个新文档插入库存集合。 如果文档未指定**_id字段,则MongoDB向每个文档添加带有ObjectId值的_id**字段。 请参阅 插入行为
1
db.inventory.insertMany([
2
{ item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } },
3
{ item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } },
4
{ item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }
5
])
Copied!
返回包含新插入的文档**_id**字段值的文档。 有关示例,请参见参考
要检索插入的文档,查询集合:
1
db.inventory.find( {} )
Copied!

插入行为

集合创建

如果该集合当前不存在,则插入操作将创建该集合。

_id Field

在MongoDB中,存储在集合中的每个文档都需要一个唯一的**_id字段作为主键。 如果插入的文档省略_id字段,则MongoDB驱动程序会自动为_id字段生成ObjectId**。
这也适用于通过upsert:true通过更新操作插入的文档。

原子性

MongoDB中的所有写操作都是单个文档级别的原子操作。 有关MongoDB和原子性的更多信息,请参见原子性和事务.

写确认书

对于写入问题,您可以指定从MongoDB请求的写入操作的确认级别。 有关详细信息,请参见写关注
另可参考:
译者:杨帅
校对:杨帅