در این قسمت چند قاعده ساده برای تبدیل نمودار er به بانک اطلاعاتی را ارائه آموزش می دهیم، با استفاده از این قواعد می توان یک بانک اطلاعاتی نسبتاً نرمال ایجاد کرد. برای تبدیل نمودار ER به بانک اطلاعاتی قواعد زیر را استفاده می کنیم :

قاعده اول:

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

 

قاعده دوم:

هر موجودیت ضعیف تبدیل به یک جدول شده و این جدول دارای یک کلید خارجی متناظر با کلید اصلی در جدول مربوط به موجودیت قوی است.

مثال:

تبدیل نمودار ای ار به بانک اطلاعاتی

Personal:کارمند                                                Family:اعضای خانواده کارمند

Family یک نهاد ضعیف است چون وجودش وابسته به نهاد Personal می باشد.یعنی اگر کارمندی وجود نداشته باشد اعضای خانواده ی او هم نمی توانند وجود داشته باشند. پیاده سازی آن بصورت زیر خواهد بود:

قاعده سوم:

برای یک رابطه ی درجه یک (رابطه ای که بین بک موجودیت و خودش است)، یک ستون اضافی به عنوان کلید خارجی در آن ایجاد کرده که در ارتباط با کلید اصلی جدول می باشد.

مثال:

 

Salary Name Mng_Code Code
۲۰۰ ali ۰ ۱
۱۵۰ reza ۱ ۲
۱۲۰ sara ۱ ۳
۱۱۰ hadi ۳ ۴
۱۵۰ zahra ۳ ۵

 

قاعده چهارم:

برای یک رابطه درجه ی ۲ و با کاردینالیتی ۱:۱  برای هر نهاد یک جدول ایجاد کرده و کلید اصلی آن دو جدول با هم متناظر خواهد بود.

قاعده پنجم:

برای یک رابطه درجه۲ باکاردینالیتی۱:N  نهادطرف یک تبدیل به یک جدول می شود و نهاد طرف چند(N) تبدیل به یک جدول با کلید خارجی متناظر با کلید اصلی جدول دیگری می شود.به عنوان مثال برای نهادهای کارمند و پرو‍ژه ،  به شرط اینکه بر روی هر پروژه فقط یک کارمند کار کند و هر کارمندی بتواند چند پروژه را انجام دهد،  خواهیم داشت:

قاعده ششم:

در رابطه ی درجه ی ۲ با کاردینالیتی  M:N (چند به چند) هر کدام از نهادها به صورت یک جدول پیاده سازی شده و خود رابطه نیز به صورت یک جدول جداگانه ایجاد می شود که دو کلید خارجی متناظر با کلیدهای اصلی در دو جدول نهاد دارد. ضمن  اینکه ترکیب کلیدهای خارجی در جدول رابطه می تواند کلید اصلی آن باشد.

 

مثال: رابطه دانشجو با درس که هر دانشجو می تواند چند درس را انتخاب کرده و هر درس می تواند توسط چند دانشجو انتخاب شود.

قاعده هفتم:

 برای صفاتی که می توانند مقدار آنها  از این چند مقدار معین انتخاب شوند.

مثل رشته در جدول درس ها یا جدول دانشجو و  یا استان محل سکونت در جدول دانشجویان و غیره. یک جدول برای نگهداری مقادیر قابل انتخاب ایجاد می کنیم مثلا جدول رشته ها ودر جدولی که دارای آن صفت است ،صفت به صورت کلید خارجی متناظر با کلید اصلی این جدول پیاده سازی می شود.

قاعده هشتم:

برای صفات چند مقداری مثل صفت فعالیت علمی دانشجو یا مدارک استاد یک جدول جداگانه ای برای نگهداری فعالیت ها و مقادیر آن صفت ایجاد می کنیم که دارای یک کلید خارجی مرتبط با کلید اصلی درجدول نهاد است.

 

مثال :جدول دانشجویان و فعالیت های آنها

Students

Avg Name Id
۱۷ Ali ۱۰۰
۱۴ Sara ۱۰۱

Activities

Title Id ACode
رتبه اول مسابقات ورزشی ۱۰۰ ۱
رتبه اول مسابقات علمی ۱۰۱ ۲
برگزاری سمینار آموزشی ۱۰۰ ۳

قاعده نهم:

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

 

Spay: شروع قرارداد

Epay: پایان قرارداد

Semp: شروع استخدام

Numday: تعداد روزهای کارکرد

 

قاعده دهم :

رابطه تجمیع مثل رابطه بین کامپیوتر و قطعات آن. یک جدول ایجاد می کنیم که دارای ستونهایی برای صفات خاصه نهاد اصلی است و یک جدول برای هرکدام از نهادهایی جزئی که دارای ستونهایی برای نگهداری مشخصات آنها بعلاوه  یک ستون بعنوان کلید خارجی مرتبط با کلید اصلی در جدول اصلی هستند.

 

مثال:نمودار زیر را به بانک اطلاعاتی تبدیل کنید.

 

 

پاسخ – جدول ها :

۱- جدول پزشک ها

Doctors

ردیف نام ستون نوع داده
۱ Dcode عددی
۲ Nezam عددی
۳ Name کاراکتری

۲- جدول بیمه ها

Insurance

ردیف نام ستون نوع داده
۱ Icode عددی
۲ Addr متنی
۳ Tel عددی

 

 

۳- جدول بیماران

Bimaran

ردیف نام ستون نوع داده
۱ Bcode عددی
۲ Name کاراکتری
۳ Addr کاراکتری
۴ Icode عددی

۴- جدول بیماریها

Bymary

ردیف نام ستون نوع داده
۱ Ycode عددی
۲ Name کاراکتری
۳ Sharh کاراکتری
  • جدول رابطه – پزشک ، بیمار ، بیماری

Vizits

ردیف ستون نوع داده
۱ Dcode عددی
۲ Bcode عددی
۳ Ycode عددی
۴ Vdate تاریخ

رابطه بین جداول بصورت زیر است:

نمایش قابل چاپ