Mongoose – Insert Multiple Documents to MongoDB
To insert Multiple Documents to MongoDB using Mongoose, use Model.collection.insert(docs_array, options, callback_function); method. Callback function has error and inserted_documents as arguments.
Syntax of insert() method
Model.collection.insert(docs, options, callback)
where
- docs is the array of documents to be inserted;
- options is an optional configuration object – see the docs
- callback(err, docs) will be called after all documents get saved or an error occurs. On success, docs is the array of persisted documents.
Example – Insert Multiple Documents to MongoDB via Node.js
In this example, we will write a Node.js script that inserts Multiple Documents to MongoDB Collection 'bookstore'
using Mongoose module.
node-js-mongoose.js
var mongoose = require('mongoose'); // make a connection mongoose.connect('mongodb://localhost:27017/tutorialkart'); // get reference to database var db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function() { console.log("Connection Successful!"); // define Schema var BookSchema = mongoose.Schema({ name: String, price: Number, quantity: Number }); // compile schema to model var Book = mongoose.model('Book', BookSchema, 'bookstore'); // documents array var books = [{ name: 'Mongoose Tutorial', price: 10, quantity: 25 }, { name: 'NodeJS tutorial', price: 15, quantity: 5 }, { name: 'MongoDB Tutorial', price: 20, quantity: 2 }]; // save multiple documents to the collection referenced by Book Model Book.collection.insert(books, function (err, docs) { if (err){ return console.error(err); } else { console.log("Multiple documents inserted to Collection"); } }); });
Open a terminal or command prompt and run this script using node command as shown in the following.
Output
$ node node-js-mongoose.js Connection Successful! Multiple documents inserted to Collection
Check MongoDB for the entries in bookstore collection.
> db.bookstore.find() { "_id" : ObjectId("5a77033a27e41d271f58fde1"), "name" : "Mongoose Tutorial", "price" : 10, "quantity" : 25 } { "_id" : ObjectId("5a77033a27e41d271f58fde2"), "name" : "NodeJS tutorial", "price" : 15, "quantity" : 5 } { "_id" : ObjectId("5a77033a27e41d271f58fde3"), "name" : "MongoDB Tutorial", "price" : 20, "quantity" : 2 }
Conclusion
In this Node.js Mongoose Tutorial, we have learnt to insert multiple documents to MongoDB using Mongoose.