In MongoDB, documents are stored in collections, and you insert documents using methods like insertOne() and insertMany().
1. Insert a Single Document
db.users.insertOne({ name: "Alice", age: 25, email: "[email protected]" })
Example result:
{
"acknowledged": true,
"insertedId": ObjectId("64c9c2d1a45b8e...")
}
2. Insert Multiple Documents
db.users.insertMany([
{ name: "Bob", age: 30 },
{ name: "Charlie", age: 22, email: "[email protected]" }
])
Result:
{
"acknowledged": true,
"insertedIds": {
"0": ObjectId("64c9c2d1a45b8e..."),
"1": ObjectId("64c9c2d1a45b8f...")
}
}
3. Specify a Custom _id (Optional)
db.users.insertOne({ _id: 1001, name: "David", age: 28 })
4. Insert with Nested Documents & Arrays
MongoDB allows complex JSON-like structures:
db.orders.insertOne({
orderId: 123,
customer: { name: "Alice", email: "[email protected]" },
items: [
{ product: "Laptop", qty: 1, price: 1200 },
{ product: "Mouse", qty: 2, price: 25 }
],
status: "pending"
})
5. Insert with Write Concerns (Optional)
You can control acknowledgment behavior:
db.users.insertOne(
{ name: "Eve", age: 29 },
{ writeConcern: { w: "majority", wtimeout: 5000 } }
)
6. Legacy Command (insert)
Older versions of MongoDB used insert() (still works, but not recommended):
db.users.insert({ name: "Frank", age: 35 })
Better to use insertOne() or insertMany().
7. Verifying Insertions
To check inserted documents:
db.users.find()
-
insertOne(document) → insert a single document.
-
insertMany([documents]) → insert multiple at once.
-
MongoDB auto-creates collection on first insert.
-
Documents can be nested objects or arrays.
-
_id is always unique and automatically generated if not provided.