۱
subtitle
ارسال: #۱
سوال ۷۸ آی تی ۹۲ ( تبدیل نمودار وراثت به مدل رابطه ای)
سلام.
لطفا این سوال رو نگاه کنید:

برای تبدیل نمودار وراثت به مدل رابطه ای تو کتاب مقسمی هیچی ننوشته. من تو نت که گشتم به این نتیجه رسیدم
برای تبدیل رابطه وراثت از مدل شی گرا به مدل رابطه ای چندین روش مختلف وجود دارد:
******
روش اول:
در این روش برای کل سلسله مراتب کلاس، یک جدول در نظر می گیریم. که ساختار جدول به صورت زیر خواهد بود:
{صفات سوپر کلاس، صفات مختص زیر کلاس ها و یک فیلد نوع کلاس (موجودیت)}
فیلد نوع برای ذخیره اینکه رکورد مورد نظر مربوط به اطلاعات کدام کلاس است به کار می رود.
که در این روش null داریم.
******
روش دوم:
در این روش برای هر زیر کلاس یک جدول در نظر می گیریم. که شمای هر جدول به صورت زیر خواهد بود:
{صفات سوپر کلاس و صفات مختص زیر کلاس}
در این روش بعضی از افزونگی ها را خواهیم داشت. اما مزیت این روش نسبت به روش اول اینست که در این روش دیگر ستونهای با مقادیر Null را نخواهیم داشت.
******
روش سوم:
در این روش برای سوپر کلاس یک کلاس جداگانه در نظر می گیریم که شامل صفات سوپر کلاس می باشد. و برای هر زیر کلاس نیز یک جدول جداگانه در نظر می گیریم. که شامل صفات مختص آن زیر کلاس به همراه کلید اصلی جدول مربوط به سوپر کلاس.
این روش بهترین گزینه برای ما می باشد.زیرا دقیقا هر کلاس را به یک جدول جداگانه و مستقل نگاشت می کند. و هر تغییری در یک کلاس فقط در جدول مربوط به آن کلاس تاثیر خواهد گذاشت و بر خلاف دو روش قبلی، روی جدول های دیگر تاثیر نخواهد گذاشت. در این روش نه افزونگی داده داریم و نه ستونی با مقدار Null.
با توجه به این توضیحات، جواب صحیح گزینه ۲ میشه اما تو پاسخ نامه زده گزینه ۱!!
میشه بگید کدوم درسته؟؟
ممنون
لطفا این سوال رو نگاه کنید:
برای تبدیل نمودار وراثت به مدل رابطه ای تو کتاب مقسمی هیچی ننوشته. من تو نت که گشتم به این نتیجه رسیدم
برای تبدیل رابطه وراثت از مدل شی گرا به مدل رابطه ای چندین روش مختلف وجود دارد:
******
روش اول:
در این روش برای کل سلسله مراتب کلاس، یک جدول در نظر می گیریم. که ساختار جدول به صورت زیر خواهد بود:
{صفات سوپر کلاس، صفات مختص زیر کلاس ها و یک فیلد نوع کلاس (موجودیت)}
فیلد نوع برای ذخیره اینکه رکورد مورد نظر مربوط به اطلاعات کدام کلاس است به کار می رود.
که در این روش null داریم.
******
روش دوم:
در این روش برای هر زیر کلاس یک جدول در نظر می گیریم. که شمای هر جدول به صورت زیر خواهد بود:
{صفات سوپر کلاس و صفات مختص زیر کلاس}
در این روش بعضی از افزونگی ها را خواهیم داشت. اما مزیت این روش نسبت به روش اول اینست که در این روش دیگر ستونهای با مقادیر Null را نخواهیم داشت.
******
روش سوم:
در این روش برای سوپر کلاس یک کلاس جداگانه در نظر می گیریم که شامل صفات سوپر کلاس می باشد. و برای هر زیر کلاس نیز یک جدول جداگانه در نظر می گیریم. که شامل صفات مختص آن زیر کلاس به همراه کلید اصلی جدول مربوط به سوپر کلاس.
این روش بهترین گزینه برای ما می باشد.زیرا دقیقا هر کلاس را به یک جدول جداگانه و مستقل نگاشت می کند. و هر تغییری در یک کلاس فقط در جدول مربوط به آن کلاس تاثیر خواهد گذاشت و بر خلاف دو روش قبلی، روی جدول های دیگر تاثیر نخواهد گذاشت. در این روش نه افزونگی داده داریم و نه ستونی با مقدار Null.
با توجه به این توضیحات، جواب صحیح گزینه ۲ میشه اما تو پاسخ نامه زده گزینه ۱!!
میشه بگید کدوم درسته؟؟
ممنون