插入文档
MongoDB shell 提供了以下方法来将文档插入到集合中:
- 要插入单个文档,请使用
db.collection.insertOne()
. - 要插入多个文档,请使用
db.collection.insertMany()
.
此页面上的示例参考了Atlas 样本数据集. 您可以创建一个免费的Atlas 集群并使用示例数据填充该集群以跟随这些示例。要了解更多信息,请参阅 开始使用Atlas。
插入单个文档
db.collection.insertOne()
插入一个 文档成一个集合。如果文档没有指定_id
字段,MongoDB 会将_id
带有 ObjectId 值的字段添加到新文档中。看 插入行为。
例子:
要将新文档插入集合
sample_mflix.movies
:use sample_mflix db.movies.insertOne( { title: "The Favourite", genres: [ "Drama", "History" ], runtime: 121, rated: "R", year: 2018, directors: [ "Yorgos Lanthimos" ], cast: [ "Olivia Colman", "Emma Stone", "Rachel Weisz" ], type: "movie" } )
insertOne()
返回包含新插入文档字段值的文档_id
。要检索插入的文档, 请阅读集合:
db.movies.find( { title: "The Favourite" } )
为确保返回插入的文档,您可以改为通过查询
_id
。
插入多个文档
db.collection.insertMany()
可以插入多个 文件成一个集合。将文档数组传递给该方法。如果文档没有指定_id
字段,MongoDB 会_id
为每个文档添加带有 ObjectId 值的字段。看插入行为。
例子:
向集合中插入两个新文档
sample_mflix.movies
:use sample_mflix db.movies.insertMany([ { title: "Jurassic World: Fallen Kingdom", genres: [ "Action", "Sci-Fi" ], runtime: 130, rated: "PG-13", year: 2018, directors: [ "J. A. Bayona" ], cast: [ "Chris Pratt", "Bryce Dallas Howard", "Rafe Spall" ], type: "movie" }, { title: "Tag", genres: [ "Comedy", "Action" ], runtime: 105, rated: "R", year: 2018, directors: [ "Jeff Tomsic" ], cast: [ "Annabelle Wallis", "Jeremy Renner", "Jon Hamm" ], type: "movie" } ])
insertMany()
返回包含新插入文档字段值的文档_id
。db.movies.find( {} )
插入行为
要了解有关插入文档的特定行为的更多信息,请参阅插入行为。
了解更多
- 要查看更多将文档插入集合的示例,请参阅
insertOne()
和db.collection.insertMany()
方法页面。 - 要查看将文档插入集合的所有可用方法,请参阅插入的其他方法
翻译:韩鹏帅