English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الفصل، سنتعلم كيفية حذف المستندات باستخدام MongoDB.
MongoDBremove()يستخدم هذا المتدخل ل�除 المستندات من المجموعة. يعتمد متدخل remove() على معاملتين. المعاملات الأولى هي شرط الحذف query، والثانية هي علامة justOne.
query − (اختياري) شرط حذف المستندات.
justOne − (اختياري) إذا تم تعيينه على true أو 1، فإنه سيتم حذف وثيقة واحدة فقط.
remove()النصابة الأساسية للمتدخل هي:
db.collection.remove( <query>, <justOne> )
إذا كانMongoDB الخاص بك هو إصدار 2.6 أو أحدث، فإن صيغة الجملة تكون كالتالي:
db.collection.remove( { justOne: <boolean>, writeConcern: <document> } )
شرح المعاملات:
query : (اختياري) شرط حذف المستندات.
justOne : (اختياري) إذا تم تعيينه على true أو 1، فإنه سيتم حذف وثيقة واحدة فقط، وإذا لم يتم تعيين هذا المعامل أو تم تعيينه على القيمة الافتراضية false، فإنه سيتم حذف جميع المستندات التي تتوافق مع الشروط.
writeConcern : (اختياري) مستوى الاستثناءات التي يتم رميها.
افترض أن المجموعة mycol تحتوي على البيانات التالية.
{_id : ObjectId("507f191e810c19729de860e1"), title: "MongoDB Overview"}, {_id : ObjectId("507f191e810c19729de860e2"), title: "NoSQL Overview"}, {_id : ObjectId("507f191e810c19729de860e3"), title: "w3codebox Overview"}
في هذا المثال سيتم حذف جميع المستندات التي تحتوي على العنوان "MongoDB Overview".
>db.mycol.remove({'title':'MongoDB Overview'}) كتابة النتيجة({"nRemoved" : 1}) > db.mycol.find() {"_id" : ObjectId("507f191e810c19729de860e2"), "title" : "NoSQL Overview" } {"_id" : ObjectId("507f191e810c19729de860e3"), "title" : "مقدمة إلى w3codebox"}
إذا كان هناك عدة سجلات وأردت حذف السجل الأول فقط،justOneفيremove()إعداد المعلمات في method.
> db.COLLECTION_NAME.remove(DELETION_CRITERIA,1)
إذا لم تكن قد أوضحت شرط الحذف، فإن MongoDB سيزيل جميع المستندات من المجموعة. هذا يعادل الأمر truncate في SQL.
> db.mycol.remove({}) WriteResult({ "nRemoved" : 2 }) > db.mycol.find() >