درج مستند در MongoDB با استفاده از Python
- صفحه قبلی MongoDB ایجاد مجموعه
- صفحه بعدی MongoDB پیدا کردن
مستندات MongoDB مشابه رکوردهای پایگاه داده SQL هستند.
افزودن به مجموعه
برای اضافه کردن یک رکورد یا مستند به مجموعه در MongoDB، ما از insert_one()
متد.
insert_one()
اولین پارامتر متد یک دیکشنری است که شامل نام و مقدار هر فیلد مستند مورد نظر است.
مثال
یک رکورد به مجموعه "customers" اضافه کنید:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] mydict = { "name": "Bill", "address": "Highway 37" } x = mycol.insert_one(mydict)
برمیگرداند فیلد _id
insert_one()
متد InsertOneResult را برمیگرداند، که دارای ویژگیهایی است inserted_id
، برای ذخیره ID مستندات وارد شده استفاده میشود.
مثال
یک رکورد دیگر به مجموعه "customers" اضافه کنید و مقدار _id را بازگردانید:
mydict = { "name": "Peter", "address": "Lowstreet 27" } x = mycol.insert_one(mydict) print(x.inserted_id)
اگر _id
فیلد مشخص نشده است، بنابراین MongoDB یک فیلد برای شما اضافه میکند و یک ID منحصر به فرد برای هر مستند اختصاص میدهد.
در مثال بالا، هیچ یک از _id
فیلد، بنابراین MongoDB برای ثبتها (مستندات) یک _id منحصر به فرد اختصاص میدهد.
افزودن چندین مستند
برای اضافه کردن چندین مستند به مجموعهای در MongoDB، ما از insert_many()
متد.
insert_many()
متد اولین پارامتر را شامل لیستی از دیکشنریها میکند که دادههای وارد شده را شامل میشود:
مثال
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] mylist = [ {"name": "Amy", "address": "Apple st 652"}, {"name": "Hannah", "address": "Mountain 21"}, {"name": "Michael", "address": "Valley 345"}, {"name": "Sandy", "address": "Ocean blvd 2"}, {"name": "Betty", "address": "Green Grass 1"}, {"name": "Richard", "address": "Sky st 331"}, {"name": "Susan", "address": "One way 98"}, { "name": "Vicky", "address": "Yellow Garden 2"}, { "name": "Ben", "address": "Park Lane 38"}, { "name": "William", "address": "Central st 954"}, { "name": "Chuck", "address": "Main Road 989"}, { "name": "Viola", "address": "Sideway 1633"} ] x = mycol.insert_many(mylist) # لیست _id ارزشهای مستندات اضافهشده چاپ شود: print(x.inserted_ids)
insert_many()
این روش یک شیء InsertManyResult را برمیگرداند که دارای ویژگیهایی مانند inserted_ids
برای ذخیرهسازی id مستندات اضافه شده استفاده میشود.
اضافه کردن چندین مستند با ID مشخص شده
اگر نمیخواهید MongoDB یک id منحصر به فرد برای مستندات شما اختصاص دهد، میتوانید در هنگام اضافه کردن مستند، زمینه _id را مشخص کنید.
لطفاً به خاطر داشته باشید که مقادیر باید منحصر به فرد باشند. دو فایل نمیتوانند دارای _id مشابهی باشند.
مثال
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] mylist = [ { "_id": 1, "name": "John", "address": "Highway 37"}, { "_id": 2, "name": "Peter", "address": "Lowstreet 27"}, { "_id": 3, "name": "Amy", "address": "Apple st 652"}, { "_id": 4, "name": "Hannah", "address": "Mountain 21"}, { "_id": 5, "name": "Michael", "address": "Valley 345"}, { "_id": 6, "name": "Sandy", "address": "Ocean blvd 2"}, { "_id": 7, "name": "Betty", "address": "Green Grass 1"}, {"_id": 8, "name": "Richard", "address": "Sky st 331"} {"_id": 9, "name": "Susan", "address": "One way 98"}, {"_id": 10, "name": "Vicky", "address": "Yellow Garden 2"}, {"_id": 11, "name": "Ben", "address": "Park Lane 38"}, {"_id": 12, "name": "William", "address": "Central st 954"}, {"_id": 13, "name": "Chuck", "address": "Main Road 989"}, {"_id": 14, "name": "Viola", "address": "Sideway 1633"} ] x = mycol.insert_many(mylist) # لیست _id ارزشهای مستندات اضافهشده چاپ شود: print(x.inserted_ids)
- صفحه قبلی MongoDB ایجاد مجموعه
- صفحه بعدی MongoDB پیدا کردن