Skip to content

MongoDB 插入文档

insertOne 插入单条

javascript
db.users.insertOne({
  name: "张三",
  age: 28,
  email: "zhangsan@example.com"
})

返回示例:{ acknowledged: true, insertedId: ObjectId("...") }。未指定 _id 时自动生成 ObjectId。

insertMany 插入多条

javascript
db.users.insertMany([
  { name: "李四", age: 25 },
  { name: "王五", age: 30 }
])

返回:{ acknowledged: true, insertedId: [ ObjectId("..."), ObjectId("...") ] }

指定 _id

若自己提供 _id,需保证唯一,否则重复插入会报错:

javascript
db.users.insertOne({ _id: 1, name: "测试" })

有序与无序插入

insertMany 默认有序:某条失败则后续不再插入。可设 ordered: false 让服务器尽可能插入所有文档(无序):

javascript
db.coll.insertMany([ ... ], { ordered: false })

写关注(writeConcern)

可指定写关注级别,如:

javascript
db.users.insertOne({ name: "赵六" }, { writeConcern: { w: "majority" } })

下一节介绍 MongoDB 更新文档