If tutorials available on this website are helpful for you, please whitelist this website in your ad blocker😭 or Donate to help us ❤️ pay for the web hosting to keep the website running.
पिछले topic में आपने सीखा कि Node.js में MongoDB Database Collection(Table) कैसे create करते हैं , इस topic में आप सीखेंगे कि किसी Collections में कैसे records insert करते हैं।
अगर आपको याद होगा कि MySQL Table में Record Insert करने के लिए हमें Table में attributes / columns और उनके type को define करने की जरूरत होती थी ताकि उसी के according columns में data save कर सकें लेकिन MongoDB के साथ ऐसा नहीं है।
MongoDB Collection(Table) में record insert करने के लिए हमें MySQL Table की तरह attributes / columns and उनके type को define करने की जरूरत नहीं होती है। आप किसी भी type की value को directly save कर सकते हैं। लेकिन हमें यह बात ध्यान में रखनी है , कि column में किस type की value save की है , otherwise code में logical error के chances रहेंगे।
MongoDB में record insert करने के लिए insertOne(Object , callback) method का use किया जाता है। पिछले topic में हमें एक users collection(table) create किया था , उसी collection (table) में records को insert करने की कोशिश करेंगे।
// import MongoClient from mongodb package
const { MongoClient } = require('mongodb');
// we have used online mongodb , you can use local MongoDB that's installed on your system.
const uri = "mongodb+srv://dbUser:dbPassword@cluster0.2n7fz.mongodb.net/node_mongodb?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true , connectTimeoutMS: 30000 , keepAlive: 1});
// make connection
client.connect(error => {
if(error){
console.log("MongoDB Connect Error", error.name, error.message);
}else{
// select database
const database = client.db("node_mongodb");
// select collection
const users = database.collection("user");
let new_user = {
name : "Rahul Kumar",
age : 24,
address : "U.P. India",
website : "learnhindituts.com"
}
// now insert
users.insertOne(new_user, function(error, result){
if(error){
console.log("MongoDB Insert Error", error.name, error.message);
}else{
console.log("Record Insrted : ", result);
}
})
}
});
C:\Users\HP\Desktop\workspace\nodejs>node app.js Record Insrted : { acknowledged: true, insertedId: new ObjectId("61ff45c010efe037815b2044") }
Record successfully insert होने पर , हमें एक Object return होता है , जिसमे acknowledged, insertedId properties होती है।
{ acknowledged: true, insertedId: new ObjectId("61ff45c010efe037815b2044") }
acknowledged: true इसका मतलब है , कि MongoDB driver को database में write operation के लिए server द्वारा acknowledge कर दिया गया है।
insertedId: ObjectId Inserted record की id हैं।
Note : MongoDB में by default _id name की 24 words की randomly string id create होती है , तो हमें अलग से कोई primary key generate करने की जरूरत नहीं है।
अगर आपने collection (table) create नहीं भी किया है , तो भी कोई problem नहीं है , record insert करते समय अगर collection नहीं मिलता तो automatically create हो जाता है।
Database में multiple records एक साथ insert करने के लिए insertMany(Array, callback) method का use किया जाता है।बस single Object की जगह आपको Objects का Array pass करना होता है।
const { MongoClient } = require('mongodb');
const uri = "mongodb+srv://dbUser:dbPassword@cluster0.2n7fz.mongodb.net/node_mongodb?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true , connectTimeoutMS: 30000 , keepAlive: 1});
client.connect(error => {
if(error){
console.log("MongoDB Connect Error", error.name, error.message);
}else{
const database = client.db("node_mongodb");
const users = database.collection("users");
// define Array of objects
let store = [
{
name : "Mohit Kumar",
age : 24,
address : "U.P. India",
website : null
},
{
name : "Raju",
age : 26,
address : "Punjab",
website : null
},
]
// now insert
users.insertMany(store, function(error, result){
if(error){
console.log("MongoDB Insert Error", error.name, error.message);
}else{
console.log("Records Insrted : ", result);
}
})
}
});
C:\Users\HP\Desktop\workspace\nodejs>node app.js Records Insrted : { acknowledged: true, insertedCount: 2, insertedIds: { '0': new ObjectId("61ff4d6c3c7e813b57e3214a"), '1': new ObjectId("61ff4d6c3c7e813b57e3214b") } }
multiple records एक साथ insert करने पर return में आपको object मिलेगा।
acknowledged: true इसका मतलब है , कि MongoDB driver को database में write operation के लिए server द्वारा acknowledge कर दिया गया है।
insertedCount: 2 number of inserted records , जिन्हे database में insert किया गया है।
insertedIds: Object Object में inserted records की ids हैं।
I Hope, आपको समझ आया होगा कि, Node.JS में MongoDB database में कैसे single और multiple records को insert किया जाता है।