وارد کردن مستند به MongoDB با استفاده از Python

مستندات 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)

Afarin Misali

بازگشت فیلد _id

insert_one() مетод یک شیء InsertOneResult را بازمی‌گرداند که دارای ویژگی‌هایی است inserted_id، برای ذخیره ID مستندات وارد شده استفاده می‌شود.

النموذج

یک رکورد دیگر به مجموعه "customers" اضافه کنید و مقدار _id فیلد را بازگردانید:

mydict = { "name": "Peter", "address": "Lowstreet 27" }
x = mycol.insert_one(mydict)
print(x.inserted_id)

Afarin Misali

اگر _id فیلد مشخص نشده است، بنابراین MongoDB یک _id برای شما اضافه می‌کند و یک 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)
# Ayyana ci gurbe da a fi kama a fi gurbe _id:
print(x.inserted_ids)

Afarin Misali

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)
# Ayyana ci gurbe da a fi kama a fi gurbe _id:
print(x.inserted_ids)

Afarin Misali