English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدليل Node.js، سنستخدم طرق insertOne() و insertMany()، من خلال الأمثلة، سنتعلم كيفية إدراج مستند واحد أو أكثر من تطبيق Node.js إلى مجموعة MongoDB.
هذا دليل خطوة بخطوة، ويقدم مثالاً يوضح كيفية إدراج مستندات من تطبيق Node.js إلى مجموعة MongoDB.
بدء خدمة MongoDB. اتبع الأوامر التالية لبدء خدمة MongoDB
sudo service mongod start
الحصول على URL الأساسي لمخدم MongoDB. لتعلم URL الأساسي لمخدم MongoDB، يمكنك فتح الترميز و تشغيل Mongo Shell.
الترميز - Mongo Shell
arjun@nodejs:~$ mongo إصدار Mongo Shell: v3.4.9 الاتصال بـ: mongodb://127.0.0.1:27017 إصدار خادم MongoDB: 3.4.9 تحذيرات بدء التشغيل للخادم: 2017-10-29T18:15:36.110+0530 I STORAGE [initandlisten]
عند بدء تشغيل Mongo Shell، فإنه يعكس URL الأساسي لـMongoDB.
mongodb://127.0.0.1:27017
إعداد URL الكامل. أضف اسم قاعدة البيانات التي تريد الاتصال بها (مثل newdb) إلى URL الأساسي.
mongodb://127.0.0.1:27017/newdb
إنشاء MongoClient.
var MongoClient = require('mongodb').MongoClient;
الاتصال بـMongoDB Server باستخدام URL المساعد.
MongoClient.connect(url, <callback_function>);
بمجرد إكمال محاولة MongoClient لإنشاء اتصال، سيتم إرسال وظيفة الرد كمعامل مع خطأ وظيفة الرد obj db.
إذا كانت الاتصال ناجحًا، فإن obj db يشير إلى قاعدة البيانات newdb.
إدراج المستند في مجموعة MongoDB المحددة. إليك لغة البرمجة من Node.js لإدراج المستند في مجموعة MongoDB باستخدام طرق insertOne() و insertMany().
insertOne()
db.collection(<collection_name>).insertOne(<document>, <callback_function>)
insertMany()
db.collection(<collection_name>).insertMany(<documents_array>, <callback_function>)
شرح المعلمات:
<اسم_المجموعة> - الاسم الذي سنقوم بإنشاء مجموعة MongoDB جديدة به
<مستند> - يجب إدراجها في مستندMongoDB Collection الواحد
<document_array> - قائمة المستندات التي سيتم إدراجها في مجموعة MongoDB Collection
<callback_function> - بعد أن يحاول Node إنشاء المجموعة وتهيئة النتائج، سيتم استدعاء هذه الوظيفة التفاعلية Node.js. وظيفة التفاعل تأخذ الخطأ والمسجل كمعاملين.
// نحن نقوم بإنشاء مجموعة "المستخدمين" في قاعدة بيانات newdb var url = "mongodb://localhost:27017/newdb"; // إنشاء عميل إلى mongodb var MongoClient = require('mongodb').MongoClient; // جعل العميل يتصل بخدمة mongo MongoClient.connect(url, function(err, db) { if (err) throw err; // db يشير إلى newdb console.log("Shifted to "+db.databaseName+" database"); // ملفات للإدراج var doc = { name: "Roshan", age: "22" }; // استخدام insertOne لضمان مستند في مجموعة "المستخدمين" db.collection("users").insertOne(doc, function(err, res) { if (err) throw err; console.log("Document inserted"); // إغلاق الاتصال بالـ db عند الانتهاء db.close(); }); });
نتائج الخروج
$ node node-js-mongodb-insert-document.js الانتقال إلى قاعدة بيانات newdb الجديدة Document inserted
Mongo Shell
> use newdb switched to db newdb > show collections users > db.users.find({}); {"_id" : "ObjectId(5a127729a415612642e3d6ad)", "name" : "Roshan", "age" : "22"} >
// نحن نقوم بإنشاء مجموعة "المستخدمين" في قاعدة بيانات newdb var url = "mongodb://localhost:27017/newdb"; // إنشاء عميل إلى mongodb var MongoClient = require('mongodb').MongoClient; // جعل العميل يتصل بخدمة mongo MongoClient.connect(url, function(err, db) { if (err) throw err; // db يشير إلى newdb console.log("Shifted to "+db.databaseName+" database"); // ملفات للإدراج var docs = [{ name: "Udat", age: "21" }, { name: "Karthik", age: "24" }, { name: "Anil", age: "23" }]; // استخدام insertOne لضمان العديد من المستندات في مجموعة "المستخدمين" db.collection("users").insertMany(docs, function(err, res) {}} if (err) throw err; console.log(res.insertedCount+" مستندات إدراج"); // إغلاق الاتصال بالـ db عند الانتهاء db.close(); }); });
نتائج الخروج
$ node node-js-mongodb-insert-many-documents.js الانتقال إلى قاعدة بيانات newdb الجديدة 3 مستندات إدراج
Mongo Shell
> db.users.find({}); {"_id" : "ObjectId(5a127729a415612642e3d6ad)", "name" : "Roshan", "age" : "22"} {"_id" : "ObjectId(5a1278efecc5062794f4ed8d)", "name" : "Udat", "age" : "21"} {"_id" : "ObjectId(5a1278efecc5062794f4ed8e)", "name" : "Karthik", "age" : "24"} {"_id" : "ObjectId(5a1278efecc5062794f4ed8f)", "name" : "Anil", "age" : "23"} >
الإدخال الأول يأتي من المثال الأول، وتم إدراج الثلاثة المتبقية مع هذا المثال.
في هذا درس Node.js MongoDB: Node.js - إدراج مستندات (مستندات) في مجموعة MongoDB، تعلمنا كيفية استخدام مكتبة mongodb لتحديد insertOne() و insertMany() في تطبيقات Node.js لوضع مستندات واحدة أو أكثر في مجموعة MongoDB. في درسنا التالي - البحث في MongoDB باستخدام Node.js، سنتعلم كيفية استعلام المستندات من مجموعة MongoDB.