كيفية دمج برنامج تشغيل MongoDB Node.js

Kyfyt Dmj Brnamj Tshghyl Mongodb Node Js



لدى MongoDB حزمة رسمية تسمى MongoDB Node.js Driver، مما يتيح التكامل بين برامج Node.js وقواعد البيانات. باستخدام هذا التطبيق، يمكننا الاتصال بالمستندات والاستعلام عنها وتحديثها وحذفها، من بين إجراءات قاعدة البيانات الأخرى. لاستخدام برنامج تشغيل MongoDB Node.js، نحتاج إلى تثبيت حزمة mongodb من npm، وهو مدير حزم Node. في هذه المقالة، قمنا بتوفير كل مرحلة للحصول على mongodb من npm أدناه.

قم بإعداد برنامج تشغيل MongoDB باستخدام وحدة npm

للحصول على برنامج تشغيل MongoDB Node.js، نحتاج أولاً إلى الحصول على وحدة npm الخاصة بـ Node.js على نظامنا، والتي يجب تحديثها. لقد قمنا بتثبيت npm بأحدث إصدار عالميًا على النظام. يتم توفير أمر تثبيت وحدة npm أدناه:

تثبيت npm -g npm@9.8.1

من الواضح هنا أنه تمت إضافة وحدة npm إلى الكمبيوتر.









الآن، نحن بحاجة إلى دمج MongoDB مع برنامج تشغيل Node.js، لذا فإن الأمر التالي يساعدنا في الحصول على برنامج تشغيل Mongodb باستخدام الأمر npm. يتم حفظ التبعيات بواسطة npm في ملف يسمى 'package.json' مع خيار الحفظ -save. ومع ذلك، يمكننا تثبيت برنامج تشغيل MongoDB وإضافته إلى تبعيات المشروع دون خيار الحفظ لتحقيق نفس النتيجة.



npm تثبيت mongodb --حفظ

تم الآن تثبيت برنامج تشغيل MongoDB بنجاح، كما هو موضح في الصورة التالية.





الخطوة التالية هي إنشاء دليل فريد حيث يمكن وضع برنامج MongoDB. للقيام بذلك، قم بإنشاء الدليل 'NewFolder' باستخدام الأمر mkdir. الأمر الخاص بإنشاء الدليل هو كما يلي:



مكدير مجلد جديد

الآن، قمنا بتحديد المسار كما هو موضح أدناه للوصول إلى هذا الدليل المحدد.

القرص المضغوط C:\Users\Hp\MyNodejs\NewFolder

وهكذا، نحن الآن في الدليل 'NewFolder' الذي تم إنشاؤه في الخطوة السابقة. للانتقال إلى العملية التالية، نطالب الأمر 'npm init -y' بتهيئة مشروع Node.js الجديد بسرعة عن طريق إنشاء ملف package.json بقيم افتراضية دون الحاجة إلى أي إدخال من المستخدم.

تم إنشاء ملف package.json الأساسي بالقيم الافتراضية كمخرج الأمر أدناه.

المثال رقم 1: إنشاء الاتصال بخادم MongoDB عن طريق دمج Node.js

تم إكمال جميع الخطوات الأولية للحصول على برنامج تشغيل MongoDB داخل Node.js بنجاح في القسم أعلاه. الآن، يمكننا بسهولة إنشاء اتصال مع خادم MongoDB. ولهذا قمنا بإنشاء ملف داخل الدليل 'NewFolder' باسم 'MongoDB.js'. ويرد أدناه البرنامج النصي لتأسيس الاتصال.

const {MongoClient } = يتطلب ( 'مونجودب' );
عنوان URL الثابت = 'mongodb:// 127.0.0.1:27017 ' ;
عميل const = new MongoClient(url);
const db_name = 'قاعدة بيانات جديدة' ;
وظيفة غير متزامنة الرئيسية () {
انتظر Client.connect();
console.log( 'تم الاتصال بنجاح بخادم MongoDB' );
const db = client.db(db_name);
مجموعة const = db.collection( 'المستخدمين' );
يعود 'منتهي.' ;
}

رئيسي()
.ثم(console.log)
.catch (وحدة التحكم. خطأ)
.finally(() => client.Close());

لقد أضفنا فئة 'MongoClient' من حزمة MongoDB لإنشاء اتصال خادم MongoDB. بعد ذلك، حددنا المتغيرين 'url' و'db_name' حيث تم تعريف عنوان URL لخادم MongoDB، وهو في هذه الحالة مضيف محلي، وحددنا اسم قاعدة بيانات MongoDB 'NewDatabase'.

بعد ذلك، قمنا بتعيين وظيفة غير متزامنة وأطلقنا عليها اسم main(). داخل هذه الوظيفة main()، استخدمنا وظيفة الاتصال() لإنشاء الاتصال، وعندما يتم إنشاء الاتصال بنجاح، سيقوم السجل() بطباعة الرسالة.

بعد إعداد الاتصال، نصل إلى مجموعة 'المستخدمين'. هنا، يمكننا إجراء عمليات قاعدة بيانات مختلفة داخل الوظيفة الرئيسية. بعد ذلك، يتم استدعاء الوظيفة الرئيسية باستخدام main().then(console.log).catch(console.error) للتعامل مع حالات النجاح والخطأ. وأخيرًا، قمنا بإغلاق اتصال MongoDB باستخدام Client.Close() في كتلة .finally().

أظهر الإخراج أن الاتصال بخادم MongoDB قد تم إنشاؤه بنجاح حيث قمنا بتنفيذ الملف باستخدام أمر العقدة.

المثال رقم 2: قم بإدراج المستندات في مجموعة MongoDB باستخدام Node.js

لقد قمنا بالاتصال بخادم MongoDB في القسم السابق. عندما يتم إنشاء الاتصال، يمكننا إدراج المستندات في المجموعة المحددة في البرنامج أعلاه. تتم إضافة عملية إدراج المستند في المجموعة 'user' إلى نفس الملف 'MongoDB.js'.

const {MongoClient } = يتطلب ( 'مونجودب' );
عنوان URL الثابت = 'mongodb:// 127.0.0.1:27017 ' ;
عميل const = new MongoClient(url);
const db_name = 'قاعدة بيانات جديدة' ;
وظيفة غير متزامنة الرئيسية () {
انتظر Client.connect();
console.log( 'تم الاتصال بنجاح بخادم MongoDB' );
const db = client.db(db_name);
مجموعة const = db.collection( 'المستخدمين' );

const InsertDocs =
في انتظار المجموعة.insertMany([{ الاسم: 'أليكس' ، بريد إلكتروني: ' alex@example.com ' },
{ اسم: 'آندي' ، بريد إلكتروني: ' andy@example.com ' },
{ اسم: 'نفسه' ، بريد إلكتروني: ' sam@example.com ' }]);
console.log( 'المستندات المدرجة في المجموعة =>' ، إدراج مستندات)؛
يعود 'منتهي.' ;
}

رئيسي()
.ثم(console.log)
.catch (وحدة التحكم. خطأ)
.finally(() => client.Close());

هنا، كل النص هو نفسه كما هو مذكور أعلاه؛ لقد قمنا للتو بإدخال عملية الإدراج في وظيفة المزامنة الرئيسية (). لقد أنشأنا المتغير 'insertDocs' ثم قمنا باستدعاء وظيفة InsertMany () باستخدام أمر الانتظار. بالنسبة للدالة ()insertMany، قمنا بتحديد ثلاث مستندات تحتوي على حقلي 'الاسم' و'البريد الإلكتروني' بقيم مختلفة في كل منهما. سيتم إنشاء بيان عندما يتم إدراج كافة المستندات بشكل صحيح.

يتم إدراج الإخراج المعروض للمستندات بنجاح في المجموعة بثلاثة معرفات فريدة.

المثال رقم 3: قم بتحديث المستند إلى المجموعة باستخدام Node.js

بنفس الطريقة، يمكننا أيضًا تطبيق عملية تحديث MongoDB في Node.js باتباع نفس الملف، 'MongoDB.js'. تتم إضافة العملية إلى الملف لعملية التحديث. النظر في البرنامج لهذه العملية.

const {MongoClient } = يتطلب ( 'مونجودب' );
عنوان URL الثابت = 'mongodb:// 127.0.0.1:27017 ' ;
عميل const = new MongoClient(url);
const db_name = 'قاعدة بيانات جديدة' ;
وظيفة غير متزامنة الرئيسية () {
انتظر Client.connect();
console.log( 'تم الاتصال بنجاح بخادم MongoDB' );
const db = client.db(db_name);
مجموعة const = db.collection( 'المستخدمين' );

const updateDoc = انتظار المجموعة.updateOne({ الاسم: 'آندي' },
{ مجموعة $: { البريد الإلكتروني: ' andy12@example.com ' } });
console.log( 'تم تحديث المستند في المجموعة=>' ، تحديثDoc)؛
يعود 'منتهي.' ;
}

رئيسي()
.ثم(console.log)
.catch (وحدة التحكم. خطأ)
.finally(() => client.Close());

لقد قمنا هنا بتسمية المتغير 'updateDocs' حيث يتم تعريف عملية التحديث باستخدام عامل التشغيل $set. ينص تعريف طريقة updateOne() على ضرورة تحديث مستند واحد فقط. في طريقة updateOne() الخاصة بـ MongoDB، قمنا بتوفير حقل الاسم بقيمة العبارة الأولى، ثم قمنا بإعطاء عامل التشغيل $set إلى العبارة الثانية، حيث يتم إعطاء حقل 'البريد الإلكتروني' لتحديث البريد الإلكتروني الجديد وفقًا لذلك .

يتم عرض المخرجات حيث تتم مطابقة المستند المراد تحديثه وتعديله باستخدام Node.js.

المثال رقم 4: حذف مستند من مجموعة MongoDB باستخدام Node.js

بعد ذلك، قمنا بتطبيق عملية حذف MongoDB باستخدام Node.js. يتم توفير العملية في الملف المماثل 'MongoDB.js'.

const {MongoClient } = يتطلب ( 'مونجودب' );
عنوان URL الثابت = 'mongodb:// 127.0.0.1:27017 ' ;
عميل const = new MongoClient(url);
const db_name = 'قاعدة بيانات جديدة' ;
وظيفة غير متزامنة الرئيسية () {
انتظر Client.connect();
console.log( 'تم الاتصال بنجاح بخادم MongoDB' );
const db = client.db(db_name);
مجموعة const = db.collection( 'المستخدمين' );

constdeleteDoc = انتظار المجموعة.deleteOne({ الاسم: 'آندي' });
console.log( 'تم حذف المستند=>' ، حذف الوثيقة)؛
يعود 'منتهي.' ;
}

رئيسي()
.ثم(console.log)
.catch (وحدة التحكم. خطأ)
.finally(() => client.Close());

لقد قمنا هنا بتعريف المتغير الجديد 'deleteDoc' حيث يتم حذف المستند من نفس المجموعة 'users'. يتم توفير طريقة ()deleteOne ضمن المتغير 'deleteDoc' لحذف المستند المحدد فقط، وهو المستند الذي يحتوي على الحقل 'name' المخزن بالقيمة 'Andy'. عندما يتم حذف المستند من المجموعة، سيقوم ملف Node.js أيضًا بإنشاء رسالة الحذف.

كما هو متوقع، تم حذف المستند بنجاح من 'مستخدمي' مجموعة MongoDB.

خاتمة

لقد أوضحنا كيفية إنشاء اتصال بقاعدة بيانات MongoDB والوصول إلى مجموعة باستخدام برنامج تشغيل MongoDB Node.js. بعد الاتصال بنجاح مع MongoDB، قمنا بتضمين رمز تشغيل إضافي ضمن الوظيفة الرئيسية لتنفيذ عمليات MongoDB.