Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB में स्टूडेंट ID और नाम के साथ दस्तावेज़ अपडेट करना

MongoDB में update() और $set का उपयोग करके दस्तावेज़ अपडेट करना

MongoDB में किसी दस्तावेज़ के विशिष्ट फील्ड को अपडेट करने के लिए update() के साथ $set ऑपरेटर का उपयोग करें। फिल्टर कंडीशन से लक्ष्य दस्तावेज़ पहचानें।

उदाहरण: संग्रह और दस्तावेज़ बनाना

> db.demo427.insertOne({"StudentId":101,"StudentName":"Chris Brown"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e75e711bbc41e36cc3cae75") }
> db.demo427.insertOne({"StudentId":102,"StudentName":"David Miller"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e75e71abbc41e36cc3cae76") }
> db.demo427.insertOne({"StudentId":103,"StudentName":"John Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e75e725bbc41e36cc3cae77") }
> db.demo427.insertOne({"StudentId":104,"StudentName":"Carol Taylor"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e75e733bbc41e36cc3cae78") }

सभी दस्तावेज़ देखना

> db.demo427.find();

आउटपुट:

{ "_id" : ObjectId("5e75e711bbc41e36cc3cae75"), "StudentId" : 101, "StudentName" : "Chris Brown" }
{ "_id" : ObjectId("5e75e71abbc41e36cc3cae76"), "StudentId" : 102, "StudentName" : "David Miller" }
{ "_id" : ObjectId("5e75e725bbc41e36cc3cae77"), "StudentId" : 103, "StudentName" : "John Smith" }
{ "_id" : ObjectId("5e75e733bbc41e36cc3cae78"), "StudentId" : 104, "StudentName" : "Carol Taylor" }

StudentId 102 का नाम अपडेट करना

> db.demo427.update(
  {"StudentId":102},
  {$set:{"StudentName":"John Doe"}}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

अपडेट के बाद दस्तावेज़ देखना

> db.demo427.find();

आउटपुट:

{ "_id" : ObjectId("5e75e711bbc41e36cc3cae75"), "StudentId" : 101, "StudentName" : "Chris Brown" }
{ "_id" : ObjectId("5e75e71abbc41e36cc3cae76"), "StudentId" : 102, "StudentName" : "John Doe" }
{ "_id" : ObjectId("5e75e725bbc41e36cc3cae77"), "StudentId" : 103, "StudentName" : "John Smith" }
{ "_id" : ObjectId("5e75e733bbc41e36cc3cae78"), "StudentId" : 104, "StudentName" : "Carol Taylor" }

मुख्य बिंदु:

  • {"StudentId":102} - फिल्टर: कौन सा दस्तावेज़ अपडेट करना है
  • {$set:{"StudentName":"John Doe"}} - केवल StudentName फील्ड अपडेट करता है
  • $set के बिना पूरा दस्तावेज़ रिप्लेस हो जाएगा
  • डिफ़ॉल्ट रूप से केवल पहला मिलान अपडेट होता है

आधुनिक सिंटैक्स (MongoDB 3.2+):

// एक दस्तावेज़ अपडेट
db.demo427.updateOne(
  {"StudentId": 102},
  {$set: {"StudentName": "John Doe"}}
)

// एकाधिक दस्तावेज़ अपडेट
db.demo427.updateMany(
  {"StudentId": {$gt: 100}},
  {$set: {"Status": "Active"}}
)

// अपसर्ट (नहीं मिले तो इन्सर्ट)
db.demo427.updateOne(
  {"StudentId": 105},
  {$set: {"StudentName": "New Student"}},
  {upsert: true}
)
  1. - MongoDB में डॉक्यूमेंट और सबडॉक्यूमेंट उदाहरण के साथ अपडेट

    डॉक्यूमेंट और सबडॉक्यूमेंट दिखाने वाला सिंटैक्स: db.yourCollectionName.insertOne( { yourFieldName: yourValue, yourFieldName: [ { yourFieldName1, yourFieldName2, ... N } ] } ); आइए

  1. - MongoDB में अपडेट करें और ओवरराइट रोकें

    आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo601.insertOne({ id:1, userDetails: { userName:John, userMailId:John@gmail.com } }); { acknowledged : true, insertedId : ObjectId(5e95ff5ced011c280a0905c7) } > db.demo601.insertOne({ id:2, userDetails: {

  1. - MongoDB क्वेरी: नेस्टेड दस्तावेज अपडेट करें

    आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo595.insertOne({ Information: [ { _id: new ObjectId(), Name:Chris }, { _id:new ObjectId(), Name:Robert } ] }); { acknowledged : true, insertedId : ObjectId(5e93369cfd2d90c177b5bce4) } find() मेथड की मदद से कलेक्शन के सभी