إدخال البيانات في MongoDB باستخدام Python
تعتبر MongoDB واحدة من أكثر قواعد البيانات شهرة في عالم البيانات غير العلائقية، حيث تتميز بقدرتها على التعامل مع كميات ضخمة من البيانات غير المهيكلة. باستخدام مكتبة PyMongo، يمكن للمطورين التفاعل بسهولة مع MongoDB من خلال لغة البرمجة Python. في هذا المقال، سنتناول كيفية إدخال البيانات إلى قاعدة بيانات MongoDB باستخدام Python مع تقديم أمثلة توضيحية متعددة.
الإعداد لعملية الإدخال في MongoDB
قبل البدء في إدخال البيانات، يجب أولاً التأكد من توافر MongoDB وتشغيلها على النظام الخاص بك، وكذلك تثبيت مكتبة PyMongo. يمكن تثبيت المكتبة باستخدام الأمر التالي في بيئة Python:
pip install pymongo
بمجرد تثبيت المكتبة، يمكنك البدء في إنشاء اتصال مع قاعدة بيانات MongoDB. عادةً ما يتضمن الإعداد الأساسي إنشاء عميل MongoDB وتحديد قاعدة البيانات والمجموعة (collection) التي ترغب في إدخال البيانات إليها.
from pymongo import MongoClient
# إنشاء اتصال مع خادم MongoDB
client = MongoClient('mongodb://localhost:27017/')
# اختيار قاعدة البيانات
db = client['mydatabase']
# اختيار المجموعة
collection = db['mycollection']
إدخال المستندات إلى المجموعة
بعد إعداد الاتصال بقاعدة البيانات وتحديد المجموعة، يمكنك البدء في إدخال المستندات (documents) إلى المجموعة. يمكن إدخال مستند واحد أو عدة مستندات في نفس الوقت باستخدام الدوال المناسبة من مكتبة PyMongo.
لإدخال مستند واحد، يمكنك استخدام الدالة insert_one() كما هو موضح في المثال التالي:
# إدخال مستند واحد
document = {
"name": "Ali",
"age": 25,
"city": "Riyadh"
}
result = collection.insert_one(document)
print("تم إدخال المستند مع المعرف:", result.inserted_id)
لإدخال عدة مستندات دفعة واحدة، يمكنك استخدام الدالة insert_many() كما في المثال التالي:
# إدخال عدة مستندات
documents = [
{"name": "Sara", "age": 30, "city": "Jeddah"},
{"name": "Fahad", "age": 28, "city": "Dammam"},
{"name": "Noura", "age": 22, "city": "Mecca"}
]
results = collection.insert_many(documents)
print("تم إدخال المستندات مع المعرفات:", results.inserted_ids)
بهذه الخطوات البسيطة، يمكنك إدخال البيانات إلى MongoDB بفعالية باستخدام Python. يتيح لك هذا النهج المرونة في التعامل مع البيانات غير المهيكلة والاستفادة من القدرات القوية التي توفرها MongoDB.
