یکی از مهمترین فعالیت ها در طراحی بانک اطلاعاتی، نرمال سازی آنها است.در فصل های قبلی قواعدی برای تبدیل نمودار ER به بانک اطلاعاتی رابطه ای ارائه شد که هدف پیاده سازی یک بانک اطلاعاتی نرمال بود، ولی رعایت آن قواعد به تنهایی کافی نبوده و پس از ایجاد بانک اطلاعاتی باید بررسی های روی آن انجام شده واشکالات (آنامولی ها) آن برطرف گردیده و نرمال سازی صورت گیرد. برای درک نرمال سازی نیاز به آشنایی با وابستگی های تابعی می باشد.
وابستگی تابعی
FD سرنام Functional Dependency است یعنی وابستگی تابعی. در یک جدول بین ستونها وابستگی تابعی وجود دارد، به عبارتی بعضی ستونها به بعضی دیگر وایسته هستند و یا بعضی ستونها ، ستونهایی دیگری را به صورت تابعی تعیین میکنند.
Y به طور تابعی به X وابسته است. با X تعیین کننده Y است.
مثال: جدول انتخاب واحد دانشجویان را در نظر بگیرید.
score | Title | code | avgr | name | id |
19 | DB | 1 | 17 | ali | 100 |
18 | Web | 2 | 18 | reza | 101 |
17 | Web | 2 | 17 | ali | 100 |
در جدول انتخاب واحد وابستگی هایی تابعی از جمله موارد زیر را داریم:
بعضی از وابستگی ها کاهش ناپذیر هستند مثل وابستگی :
وابستگی تابعی کاهش ناپذیز:اگر در یک وابستگی تابعی نتوانیم ستون های سمت چپ را از آنچه که هست کمتر کنیم.
نمودار وابستگی تابعی
برای نمایش واضح تر وابستگی های تابعی کاهش ناپذیر از نمودار وابستگی تابعی (FDD) استفاده می شود. در این نمودار فیلدهابصورت جعبه ها و وابستگی ها با فلش نشان داده می شوند.
مثال: نمودار FD را برای جدول زیر رسم کنید.
sale( bid , btitle , price , cid , cname , city , qty);
bid:کد کتاب btitle:عنوان کتاب
price:قیمت واحد cid:کد مشتری
cname:نام مشتری city:شهر محل سکونت مشتری qty:تعداد
وابستگی ها تابعی عبارتند از:
و نمودار وابستگی تابعی آن بصورت زیر رسم می شود.
در این بخش وابستگی ها تابعی و وابستگی های تابعی کاهش ناپذیر را آموزش دادیم ، در بخش بعدی شکل های نرمال را ارائه خواهیم کرد…