ورود ثبت نام

دستورات mongodb

دستورات mongodb

دستورات mongodb

مهندس طاها شکریتوسط مهندس طاها شکری

16 اردیبهشت 1398 22:13:50
در این قسمت میخواهیم بپردازیم به دستورات ابتدایی mongodb نحوه ایجاد,تغییر دیتابیس و وارد کردن و حذف کردن و بروز رسانی یک فیلد در collection در قسمت های قبل به بررسی نحوه نصب mongodb بر روی سیستم عامل مک و ویندوز و لینوکس پرداختیم و در این قسمت به دستورات mongodb میپردازیم باماهمراه باشید. db12.jpg

ساخت دیتابیس در mongodb

برای اینکار ابتدا وارد mongo shell میشویم:
[taha@localhost ~]$ mongo
MongoDB shell version v4.0.9
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.9

connecting to: test
در اینجا ورژن mongo shell را به محض ورود میتوانید ببینید. به صورت پیش فرض شما به دیتابیسی به نام test متصل میشوید که با اجرای دستور db میتوانید از صحت آن اطمینان حاصل نمایید
> db
test
خب اما اگر بخواهیم یک دیتابیس جدید بسازیم باید چکار کنیم؟برای ساخت یک دیتابیس جدید در باید از دستور USE DATABASE_NAME استفاده کنیم به طور مثال:
>use exampledb
switched to db exampledb
همچنین برای دیدن لیست تمامی دیتابیس های موجود میتوانید از دستور SHOW DBS استفاده کنید
> show dbs

local       0.078GB
prototype   0.078GB
test        0.078GB
همانطور که میبینید دیتابیس exampledb در لیست دیتابیس های موجود نیست اما چرا؟ در پاسخ به این سوال باید گفت وقتی دیتابیسی ایجاد میشود تا زمانی که حداقل یک فیلد در آن ذخیره نشود در لیست دیتابیس های موجود نمایان نمیشود حالا برای افزودن یک document جدید کافیست دستور db.COLLECTION_NAME.insertOne() را وارد نماییم به طور مثال:
> db.users.insertOne({'name':'Taha'})
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5a52c53b223039ee9c2daaec")
}
mongodb به طور خودکار collection به نام users میسازد و document را داخل آن قرار میدهد ObjectId بازگشتی توسط mongodb در واقع id document ثبت شده در دیتابیس میباشد mongodb برای هر document که ذخیره میشود یک ObjectId منحصر به فرد ایجاد میکند که این مقدار داخل فیلد _id میشیند حال اگر یکبار دیگر لیست نمایش دیتابیس ها را بخواهیم:
>show dbs
exampledb   0.078GB
local       0.078GB
prototype   0.078GB
test        0.078GB
حال میبینیم که دیتابیس exampledb در لیست قرار گرفته است. همچنین به سادگی توسط دستور SHOW COLLECTIONS میتوانید collection ها را ببینید
> SHOW COLLECTIONS
users
خب تا اینجا ما یک دیتابیس ساختیم و یک document داخل آن اضافه کردیم حالا میخواهیم آن دیتابیس را حذف نماییم برای حذف یک دیتابیس از دستور dropDatabase() استفاده میکینم
>db.dropDatabase()
{  "ok" : 1 }
با دیدن لیست دیتابیس ها توسط دستور SHOW DBS میتوانیم اطمینان حاصل کنیم که دیتابیس حذف گردیده است
> show dbs
local       0.078GB
prototype   0.078GB
test        0.078GB
برای اطلاعات بیشتر درباره ی دستورات mongodb به این لینک مراجعه نمایید همچنین برای اضافه کردن document به collection میتوانید از متد db.collection.insertMany() استفاده نمایید که میتواند چندین document را اضافه کند
> db.COLLECTION_NAME.insertMany(
   [ < document 1 > , < document 2 > , ... ]
   )
به طور مثال بنده مجددا collection users میسازم و از این متد استفاده میکنم
> db.users.insertMany([
   { "name": "Taha","age":33, "email": "Taha@example.com" },
   { "name":"Amir", "age":35, "email":"Amir@example.com" },
   { "name": "Ali", "age": 27, "email": "Ali@example.com" },
   { "name": "Reyhaneh", "age":15, "email":"Reyhaneh@example.com"}
])

{
   "acknowledged" : true,
   "insertedIds" : [
      ObjectId("5a52cb2451dd8b08d5a22cf5"),
      ObjectId("5a52cb2451dd8b08d5a22cf6"),
      ObjectId("5a52cb2451dd8b08d5a22cf7"),
      ObjectId("5a52cb2451dd8b08d5a22cf8")
   ]
}
insertMany یک آرایه از object ها را دریافت و یک آرایه از ObjectId به ما برمیگرداند.

یافتن document

برای یافتن یک document در یک collection میتوانیم از دستور زیر استفاده کنیم
> db.collection.find(query, projection)
همچنین برای یافتن همه ی document ها میتوانیم از دستور زیر استفاده کنیم:
> db.users.find().pretty()
{
   "_id" : ObjectId("5a52cb2451dd8b08d5a22cf5"),
   "name" : "Taha",
   "age" : 33,
   "email" : "Taha@example.com"
}
{
   "_id" : ObjectId("5a52cb2451dd8b08d5a22cf6"),
   "name" : "Amir",
   "age" : 35,
   "email" : "Amir@example.com"
}
{
   "_id" : ObjectId("5a52cb2451dd8b08d5a22cf7"),
   "name" : "Ali",
   "age" : 27,
   "email" : "Ali@example.com"
}
{
   "_id" : ObjectId("5a52cb2451dd8b08d5a22cf8"),
   "name" : "Reyhaneh",
   "age" : 15,
   "email" : "Reyhaneh@example.com"
}
این دستور مشابه دستور SELECT * FROM users در دیتابیس های sql میباشد

بروزرسانی document

برای بروزرسانی یک document میتوان از دستور زیر استفاده کرد: db.collection.updateMany(filter, update, options) به طور مثال:
> db.users.updateMany({}, {$set: { 'registration': 'incomplete'}})
{ "acknowledged" : true, "matchedCount" : 4, "modifiedCount" : 4 }

حذف document

حذف یک document با دستور زیر انجام میشود: 1 - db.collection.deleteOne(filter, options) 2 - db.collection.deleteMany(filter, options) به طور مثال:
db.users.deleteMany( { status: { $in: [ "dormant", "inactive" ] } } )

{ "acknowledged" : true, "deletedCount" : 1 }
خب ما سعی کردیم در این سری آموزش ها به مباحث پایه در mongodb بپردازیم امیدوارم مورد استفادتون قرار گرفته باشه با ما همراه باشید.

0 506

telegram mosqdevelopers


دسته بندی ها

ios

پست های اخیر

banner

کاربردها و فرصت های شغلی زبان برنامه نویسی جاوا

زبان برنامه نویسی جاوا در ا...

ادامه مطلب


banner

ساخت جداول گوناگون در css

به نام خدا. در این قسمت میخوا...

ادامه مطلب


banner

لاراول 6

انتظار ها به سررسید و سرانجام...

ادامه مطلب


banner

کتابخوان های الکترونیکی برتر

به نام خدا ؛ تاحالا شده وقتت ت...

ادامه مطلب


banner

padding ها در css

به نام خدا در این قسمت قسط د...

ادامه مطلب


RSS RSS

نظرات ارزشمند خود را در مورد وبسایت با ما در میان بگذارید

© کلیه حقوق مادی و معنوی متعلق به تیم برنامه نویسی Mosquito Network می باشد