حذف (Delete)
اینجا «حذف مونگو» را یاد می گیریم. «حذف (Delete)» یعنی پاک کردن سندها. «کالکشن (Collection)» مثل جدول است. «سند (Document)» مثل یک ردیف است. با delete_one() و delete_many() پاک سازی را انجام می دهیم.
حذف یک سند با delete_one()
تابع delete_one() فقط اولین سند مطابق را حذف می کند. شیء کوئری، هدف حذف را مشخص می کند.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": "Mountain 21" }
mycol.delete_one(myquery)
نکته: اگر چند سند مطابق باشد، فقط اولین مورد حذف می شود.
حذف چند سند با delete_many()
برای حذف گروهی از delete_many() استفاده کن. می توانی از «رجکس (Regex)» هم برای الگوها کمک بگیری.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": { "$regex": "^S" } }
x = mycol.delete_many(myquery)
print(x.deleted_count, " documents deleted.")
حذف همه سندها در کالکشن
برای پاک کردن همه سندها، یک کوئری خالی بده. این کار خطرناک است؛ حواست باشد.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
x = mycol.delete_many({})
print(x.deleted_count, " documents deleted.")
گام های سریع برای «حذف مونگو»
- به MongoDB وصل شو.
- کالکشن هدف را انتخاب کن.
- یک شیء کوئری دقیق بساز.
- برای یک مورد:
delete_one()را اجرا کن. - برای چند مورد:
delete_many()را اجرا کن.
برای مرتب سازی قبل از حذف، به مرتب سازی (Sort) برو. برای نوشتن شرط ها، صفحه کوئری (Query) را ببین.
جمع بندی سریع
delete_one()فقط اولین سند را حذف می کند.delete_many()چندین سند را هدف می گیرد.- کوئری خالی یعنی حذف همه سندها.
- قبل از اجرا، از داده ها نسخه پشتیبان بگیر.
- کوئری را همیشه دقیق و امن بنویس.