حل سوال ۸۰ از کنکور ارشد فناوری اطلاعات ۹۴

در این آموزش ضمن حل سوال ۸۰ از کنکور ارشد فناوری اطلاعات ۹۴، مروری هم بر مباحث جبر رابطه ای و فراپیوند چپ و راست خواهیم داشت.

کیفیت فیلم بصورت پیش فرض بر روی حالت low تنظیم شده است و شما می توانید با استفاده از گزینه HD، این آموزش را با بالاترین کیفیت مشاهده نمایید.

شما می توانید با استفاده از گزینه “متن فیلم”، متن مربوط به حل سوال را مشاهده کنید.

//******************************************************************************************************************************************//

صورت سوال:

در صورت سوال درس ها و پیش نیازهای آن ها در سه جدول تعریف شده است. می خواهیم بررسی کنیم کدام یک از گزینه ها مشکلی در ثبت اطلاعات در سیستم را نشان می دهد ؟ همانطور که در صورت سوال ذکر شده است prereq-id کلید خارجی مرتبط با course-id در جدول Course است.

//******************************************************************************************************************************************//

یادآوری مفهوم فراپیوند:

قبل از بررسی گزینه ها بهتر است مروری بر تعریف عملگر فرا پیوند داشته باشیم. طبق تعریفی که از عمل فراپیوند چپ می دانیم، این عملگر که با این نماد ⊐⋈ نشان داده می شود مانند پیوند طبیعی است با این تفاوت که علاوه بر سطرهای پیوند شدنی، سطرهای پیوند نشدنی از رابطه سمت چپ هم در جدول جواب آورده می شود و به جای مقادیر جدول سمت راست مقدار Null قرار می گیرد.

به طور مثال دو جدول از جداول داده شده در سوال را در نظر بگیرید. می خواهیم روی جدول Course با جدول دروس پیش نیاز فراپیوند از چپ را انجام دهیم.

اگر شرط پیوند را تساوی روی course-id قرار دهیم وقتی فراپیوند از چپ را انجام می دهیم سطرهایی از جدول Course هم که شرط را ندارند در جواب آورده می شود. مانند سطرهای یک و چهار. پس جدول حاصل از فراپیوند به این شکل می شود.

فراپیوند راست عکس عمل فراپیوند چپ است. این عملگر که با این نماد ⋈⊏ نشان داده می شود مانند پیوند طبیعی است با این تفاوت که علاوه بر سطرهای پیوند شدنی، سطرهای پیوند نشدنی از رابطه سمت راست هم در جدول جواب آورده می شود و به جای مقادیر جدول سمت چپ مقدار Null قرار می گیرد.

//******************************************************************************************************************************************//

بررسی گزینه­ ها:

در گزینه یک فراپیوند چپ روی دو جدول Course و Section مشکلی ایجاد نمی کند، چون اگر درسی هم در یک بخش وجود نداشته باشد و در پیوند شرکت نکند و section-id برای آن Null باشد مشکلی ایجاد نمی کند. یعنی امکان دارد که درسی در بخشی ارائه نشود.

به طور مثال دو جدول را در نظر بگیرید. اگر دو جدول پیوند از چپ داشته باشند. دو سطر زرد رنگ هم در پیوند شرکت می کنند و به ازای آن ها مقادیر جدول Section مقدار Null میگیرد که مشکلی به وجود نمی آید .

پس جدول حاصل از پیوند به این صورت میشود .

گزینه دو فراپیوند راست روی دو جدول Course و Prereq است. همانطور که در صورت سوال ذکر شده prereq-id کلید خارجی است، که مرتبط با course-id در جدول Course است پس چون course-id در جدول Course کلید اصلی است، اگر در جدول پیشنیازها یک course-id داشتیم که در جدول Course نباشد پس مشکل در ثبت اطلاعات پیش می آید.

مثلا در مثال رو به رو ببینید دو مقدار course-id داریم که با رنگ زرد مشخص شده است ولی در جدول Course این دو مقدار را نداریم پس در جواب با مقدار Null پیوند می شود. به این ترتیب مشکل در ثبت اطلاعات به وجود میاید چون course-id کلید اصلی است و نباید مقدار Null داشته باشد.

در گزینه سه هم که مشکلی وجود ندارد چون فراپیوند از چپ داریم و ممکن است درسی با شماره course-id پیشنیازی نداشته باشد. پس جدول حاصل از فراپیوند به این صورت می شود.

در گزینه چهار، سطر آخر که قابلیت پیوند ندارد هم در پیوند شرکت می کند. که مشکلی در ثبت اطلاعات به وجود نمی آید و امکان Null بودن فیلد prereq-id وجود دارد.

//******************************************************************************************************************************************//

پاسخ سوال:

پس تنها گزینه دو وجود مشکل در اطلاعات را نشان می دهد.

متن فیلم

یک نظر در “حل سوال ۸۰ از کنکور ارشد فناوری اطلاعات ۹۴

نظر خود را ثبت کنید

ایمیل شما به عموم نشان داده نخواهد شد. فیلدهای اجباری با ستاره نشان داده شده است *