در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

Relationship یک مقوله ی پیچیده است، هر تعاملی که بین موجودیت ها اتفاق می افته، در قالب Relationship هست. این موضوع از چند جهت بررسی میشه:

اول اینکه هر Relationship ای بایداسم داشته باشه.

دوم اینکه هر Relationship ای یک جهت یا Direction داره.

سوم اینکه هر Relationship ای درجه یا Degree داره.

چهارم اینکه هر Relationship ای یک Semantic Rule یا قواعد نحوی داره.

برای مثال به شکل زیر دقت کنید:

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

هر شعبه ای کارمند داره (پس رابطه داشتن هستش) Has در اینجا اسم رابطه است. به جهت فلش دقت کنید: شکل خوندنش هست، یعنی هر شعبه ای کارمند داره: Each branch has staff حالا اگه جهت عوض شه، این طور خونده میشه:

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

Each staff belong to a branch یعنی هر کارمند متعلق به یک شعبه هست.درجه رابطه یعنی تعداد موجودیت هایی که در اون رابطه شرکت می کنند. رابطه ها ممکنه که درجه یک باشن، یعنی یک جدول خودش با خودش رابطه داشته باشه، شاید بهتر باشه بگیم که یه جدول دو نقش رو ایفا میکنه.

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

هر کارمندی یک مدیر داره و مدیر هم خودش یک کارمند محسوب میشه. (رابطه ی بازگشتی) رابطه های بازگشتی در نمودارهای سلسله مراتبی یا درختی استفاده میشن، وقتی که شما میخواید یک درخت رو در یک جدول پیاده کنید.البته شکل بالا رو به صورت زیر هم میشه کشید:

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

رابطه ها ممکنه که درجه دو باشن، رابطه ی درجه دو متداول ترین رابطه ای هست که در ERD رسم میشه. رابطه ی درجه سه بین سه موجودیت برقرار میشه و البته این مورد کم پیش میاد و ندرتا هم رابطه ها درجه چهار هستن.ممکنه که جدولی هم داشته باشیم که با هیچ جدولی رابطه نداشته باشه، مثل اینکه یه جدول داشته باشیم که فرم های برنامه رو درش نگه داری کنیم، این جدول به هیجا وصل نیست. این یک جدول مستقل هست. یک معنایی در Relationship نهفته هست. یکی از قواعدش، نحوه مشارکت در رابطه یا Participation هست. نحوه ی مشارکت در رابطه دو جوره:

- Full Participation

- Partial Participation

اولین چیزی که Semantic rule of relationship در موردش صحبت میکنه اینه که همه ی عناصر الزام در مشارکت در رابطه دارن یا خیر؟

به این مثال دقت کنید:

وقتی که یک موجودیت داریم و یک کادری میکشیم دورش و بهش میگیم Student، خب این به تنهایی معنای کلمه ی Student رو نمیده، این در واقع نماینده ای ازنوع های موجودیت Student هست. (در شی گرایی به اینا میگن نمونه یا Instance)

از دور یک رابطه به این شکله:

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

وقتی نزیک تر میام به این شکله:

آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم

باید مدنظر داشته باشیم که از هر نوع موجودیت چند تا پیکان خارج میشه، حداقل و حداکثرش چندتاست. ممکنه که همه ی عناصر سمت چپ در رابطه شرکت کنن اما سمت راست نه! آیا همه ی نوع ها در رابطه شرکت می کنن یا نه؟ پس الزام یا عدم الزام مشارکت در رابطه اولین چیزیه که در قواعد نحوی باید مشخص بشه. مثلاً هر شعبه ای کارمند داره، امکان داره یک کارمندی وضعیتش به هر دلیل فعلا معلق باشه، یعنی عضو هیچ شعبه ای نباشه، پس این یک مثال از نوع Partial بود. گاهی سناریو جوری هست که همه ی شعب حتما باید مدیر داشته باشن، این یعنی شرکت در رابطه الزامی هست. (Full Participation)

ادامه دارد...

نویسنده: محمد علی نیزاری، مرضیه زارعی

منبع: جزیره پایگاه داده وب سایت توسینسو

هر گونه نشر و کپی برداری بدون ذکر منبع و نویسنده دارای اشکال اخلاقی می باشد.

عنوان
1 آموزش دیتابیس ( پایگاه داده ) یا Database قسمت اول رایگان
2 آموزش دیتابیس ( پایگاه داده ) یا Database قسمت دوم رایگان
3 آموزش دیتابیس ( پایگاه داده ) یا Database قسمت سوم رایگان
4 آموزش دیتابیس ( پایگاه داده ) یا Database قسمت چهارم رایگان
زمان و قیمت کل 0″ 0
1 نظر

این نظر توسط امیرحسین کریم پور در تاریخ سه شنبه, 6 فروردین 1398 حذف شده است.

دلیل: این پست فاقد محتوای فنی است. تشکر صرفا از طریق گزینه پسندیدم انجام می شود.

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....