افزودن سند در مانگو دی بی – ۲

در این قسمت از آموزش مانگو دی بی بعد از آشنایی با افزودن سند در مانگو دی بی قسمت اول قصد داریم آمورش افزودن سند در مانگو دی بی – ۲ را یاد بگیریم و افزودن سند در مانگو را تکمیل کنیم.

در این قسمت قصد داریم کار با توابع ()InsertOne و ()InsertMany را یاد بگیریم و هر کدام را کامل بررسی کرده و ببینیم هر کدام با چه تفاوت هایی با تایع ()Insert دارد و این که چرا ما از دو تابع استفاده می کنیم.

mongodb1

در نصویر بالا ما به دیتابیس مانگو دی بی متصل شده و ارتباط به دیتابیس zamiux و کالکشن Users که می بینیم ۳ عدد سند درج شده است و می بینیم هر یک از سندها تفاوت هاس ساختاری دارند و هیچ کدام شبیه هم نیستند اما همه سندها باهم از طریق key value به نام id_ شباهت دارد که شامل یک id منحصربه فرد unique می باشد به این منظور مقدار (“ObjectId(“5fef6dfe3a2672615209260d در این کالکشن unique می باشد ممکن این مقدار در کالکشن های دیگر باشد اما در این کالکشن کاملا منحصربه فرد می باشد.

درج سند از طریق تابع ()InsertOne

mongo2

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

mongodb3

پیغامی را نمایش می دهد که دو پارامتر را در خروجی نمایش می دهد که پارامتر acknowledged : true نشان دهنده که سند با موفق انجام شده است و insertedId مقدار key value را که برابر با (“ObjectId(“5fef76333a26726152092610 می باشد را نمایش می دهد.

مانگو دی بی 1

تفاوتی تابع InsertOne با تابع Insert دارد این که تابع InsertOne مقدار ObjectId را بعد درج سند در خروجی نمایش می دهد که این مورد خیلی کاربردی و مناسب می باشد به عنوان مثال ما برنامه ای در حال نوشتن هستیم با دیتابیس مانگو که هر زمان که دیتایی در دیتابیس insert شد به ما سریعا Id سند را برگرداند و نمایش دهد تا بفهمد کدام سند ذخیره شده است و بسیار کاربردی می باشد.

درج سند از طریق تابع ()InsertMany

دستور InsertMany همانند دستور InsertOne می باشد اما با این تقاوت که می تواند آرایه ای از نوع یک آنجکت را دریافت کند و درج کند.

mongodb4

ما در دستور بالا و با استفاده از تابع InsertMany سه عدد سند بصورت آرایه ای درج کردیم که بعد درج با موفقیت خروجی به شکل زیر می باشد :

مانگو دی بی 3

تفاوتی تابع InsertManyبا تابع Insert دارد این که تابع InsertMany مقدار ObjectId را بعد درج سند در خروجی نمایش می دهد که این مورد خیلی کاربردی و مناسب می باشد به عنوان مثال ما برنامه ای در حال نوشتن هستیم با دیتابیس مانگو که هر زمان که دیتایی در دیتابیس insert شد به ما سریعا Id سند را برگرداند و نمایش دهد تا بفهمد کدام سند ذخیره شده است و بسیار کاربردی می باشد.

مانگو دی بی

شما با وارد کردن دستور find می توانید ببینید در کالکشن Users چه تعداد سند درج شده است.

آموزش مانگو دی بی

در این قسمت قصد داریم سندی را درج کنیم که مقدار key value برابر با id_ را خودمان درج کنیم و مقداری به مثال ۱ را وارد کنیم و اما باید دقت کنیم که بصورت منحصربه فرد unique باشد که بصورت زیر عمل می کنیم

mongodb

همانطور که دستور بالا می بینید سندی در کالکشن درج شده به صورتی که مقدار key value برابر با id_ مقدار ۱ را داده ایم و نمی خواهیم خود دیتابیس بصورت انومات مقداری را وارد کند مه بعد نمایش سند های کالکشن به شکل زیر نمایش می دهد :

mongodb

و اگر مجدد سندی با key value مقدار ۱ و یکسانی که در کالکشن باشد را درج کنیم دیتابیس به ما خطا داده و اجازه insert سند را نمی دهد و خطای duplicate key می دهد.

mongodb

اطلاعات بیشتر در مورد insert

دیدگاه خود را بنویسید:

آدرس ایمیل شما نمایش داده نخواهد شد.

*

code

فوتر سایت