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 Nodejs
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.