32- كورس Node.js بالعربي – MongoDB Update

شرح MongoDB Update في Node.js

شرح MongoDB Update في Node.js

تعتبر MongoDB واحدة من أشهر قواعد البيانات غير العلائقية NoSQL، حيث تتسم بالمرونة والقدرة على التعامل مع مجموعات كبيرة [شركة برمجة مصرية] من البيانات بشكل فعال. عند العمل مع MongoDB في بيئة Node.js، فإن تحديث المستندات هو جزء مهم وأساسي من العمليات اليومية. في هذا المقال، سنقوم بشرح كيفية استخدام العمليات المختلفة لتحديث المستندات في MongoDB باستخدام Node.js، مع تقديم أمثلة متعددة توضح الطرق المختلفة للتحديث.

كيفية استخدام UpdateOne لتحديث مستند واحد

عملية UpdateOne تُستخدم لتحديث مستند واحد فقط داخل مجموعة. تقوم هذه العملية بتحديد المستند المراد تحديثه بناءً على شرط معين، ثم تقوم بتطبيق التحديث المطلوب. الصيغة العامة لاستخدام UpdateOne تتضمن تحديد الشرط والتحديث المراد تطبيقه. إليك مثال على كيفية استخدام UpdateOne في تطبيق Node.js:


    const { MongoClient } = require('mongodb');
    const uri = "mongodb+srv://:@cluster0.mongodb.net/myFirstDatabase?retryWrites=true&w=majority";
    const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

    async function updateDocument() {
        try {
            await client.connect();
            const database = client.db("sample_db");
            const collection = database.collection("sample_collection");
            
            const filter = { name: "John Doe" };
            const updateDoc = {
                $set: {
                    email: "johndoe_updated@example.com"
                },
            };
            
            const result = await collection.updateOne(filter, updateDoc);
            console.log(`تم تعديل ${result.matchedCount} مستند، ${result.modifiedCount} تم تحديثه بالفعل`);
        } finally {
            await client.close();
        }
    }

    updateDocument().catch(console.dir);
  

كيفية استخدام UpdateMany لتحديث مستندات متعددة

في بعض الأحيان، قد تحتاج إلى تحديث مجموعة من المستندات التي تطابق شروط معينة. هنا يأتي دور UpdateMany، وهو مشابه لـ UpdateOne، ولكن بدلاً من تحديث مستند واحد، يقوم بتحديث جميع المستندات التي تطابق الشرط المحدد. إليك مثال على كيفية استخدام UpdateMany في Node.js:


    async function updateMultipleDocuments() {
        try {
            await client.connect();
            const database = client.db("sample_db");
            const collection = database.collection("sample_collection");
            
            const filter = { status: "pending" };
            const updateDoc = {
                $set: {
                    status: "completed"
                },
            };
            
            const result = await collection.updateMany(filter, updateDoc);
            console.log(`تم [شركة برمجة مصرية]  تعديل ${result.matchedCount} مستند، ${result.modifiedCount} تم تحديثه بالفعل`);
        } finally {
            await client.close();
        }
    }

    updateMultipleDocuments().catch(console.dir);
   

باستخدام العمليات المذكورة أعلاه، يمكنك تحديث المستندات في MongoDB بسهولة ومرونة حسب متطلبات التطبيق الخاص بك. تأكد دائمًا من مراجعة الشروط والتحديثات جيدًا لتجنب أي تغييرات غير مرغوبة في قاعدة البيانات.