updateOne()
تحديث مستند واحد updateOne()
updateOne() تعدّل أوّل مستند مطابق للفلتر، باستخدام معاملات تحديث مثل $set و$inc.
تحدّث حقولًا محدّدة بدل استبدال المستند كاملًا، طالما استُخدمت معاملات التحديث (مثل $set). بلا معاملات، القيمة الثانية تستبدل المستند بالكامل — سلوك نادرًا ما يكون المقصود.
الصياغة
db.collection.updateOne(<filter>, <update>, { upsert })📄 مثال
db.users.updateOne(
{ email: "baraa@example.com" },
{ $set: { active: true }, $inc: { loginCount: 1 } }
)أهم المعاملات
| المعامل | الوظيفة |
|---|---|
| filter | شرط اختيار المستند |
| update | معاملات التحديث ($set، $inc، إلخ) |
| upsert | إنشاء مستند جديد إن لم يوجد تطابق (اختياري) |
💡 نصائح عملية
- استخدم updateMany() بنفس الصياغة لتحديث كل المستندات المطابقة دفعة واحدة
⚠️ أخطاء شائعة
- نسيان $set فتستبدل المستند بالكامل بالكائن الممرَّر، وتفقد بقية الحقول
خصائص ذات صلة
🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار MONGODB الكامل بالعربي.
📚 للتعمق التقني الكامل بالإنجليزية: MDN Web Docs