دوشنبه 19 آذر 1397 | Monday 10 th of December 2018 صفحه اصلی گروه الکترونیکی کامپیوتر
3-4-نرمال سازی

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

هدف از نرمالسازی حذف افزونگی داده و باقی نگهداشتن وابستگی بین داده های مرتبط و حفظ یکپارچگی اطلاعات است. به این طریق اندازه پایگاه داده را کاهش داده و ذخیره منطقی داده را تضمین می کند.

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

فرم های نرمال:تئوری پایگاه داده درجه نرمالسازی جدول را با اصطلاح فرم های نرمال(normalform) شرح می دهد. فرم های نرمال (یا بطور خلاصه NF) معیاری برای تعیین درجه نرمال جدول دراختیار می گذارد. در قسمت پیوست ها انواع فرم های نرمال را توضیح دادیم.

نرمال سازی پایگاه داده: هدف از فرم اول، نرمال سازی حذف گروههای تکراری از موجودیت یا جدول است. این فرایند باید بر روی تمامی جداول بانک اطلاعاتی اعمال گردد تا بتوان گفت بانک اطلاعاتی نرمال شده در فرم اول است. در این بانک هیچ گروه تکرار شده ای از داده ها وجود ندارد و همه ستونها تجزیه ناپذیر هستند. پس فرم نرمال 1 را داراست. برای این کار سعی شده است برای هر جدول فیلدی بعنوان فیلد کلید اصلی تعریف شود.برای جلوگیری از داشتن گروه های تکراری در جداول، به جای استفاده از یک جدول از چندین جدول مرتبط اسفاده می شود. به عنوان نمونه جدول مربوط به فاکتور فروش را به دو جدول هدر و جزئیات تبدیل می کنیم. با توجه به این نکته که اطلاعاتی از جمله تاریخ، کد کاربرو ... در فاکتور هست که با اضافه کردن هر کالا به لیست کالاهای فاکتور در جدول تکرار میشود پس با تبدیل جدول به دو جدول از این کار جلوگیری شد. برای هر جدول کلید اصلی در نظر گرفتیم و کلید اصلی مربوط به جدول هدر فاکتور در جدول جزئیات فاکتور به عنوان کلید خارجی قرار گرفت. به این ترتیب با اضافه کردن کالا به لیست کالاها، اطلاعات قسمت هدر تکرار نمی شود، پس با این کار فرم 1NFبر روی جدول اعمال شده و این کار را بر روی تمامی جداول پایگاه داده ها اعمال می کنیم. فرم دوم نرمال سازی در خصوص موجودیت هایی بررسی و اعمال می شود که دارای کلید اصلی مرکب هستند بنابراین در مثال فوق موجودیت فاکتور به خودی خود در فرم 2NFاست برای سایر جداول و موجودیت ها اگرهر ستون به یک کلید کامل وابسته باشد و فرم نرمال 1 را هم دارا باشد، برای این جداول فرم نرمال 2 را داریم. جداول در فرم نرمال 2 هستند، و داده ای که بتوان انها را استنتاج کرد وجود ندارد. جداول نیز به ستون غیر کلید وابسته نیستند. بنابراین فرم نرمال 3 نیز برقرار است. برای مثال در جدول فاکتور، ما فیلد مربوط به کد مشتری و کد کالا را داریم که در واقع کلید خارجی جداول مشتریان و کالا است و چون دارای فرم 2NFاست بنابراین جداول مربوط به فاکتور دارای فرم 3NFمی باشد.(در صورتیکه ما به جای کد مشتری و کد کالا از نام مشتری و نام کالا در فاکتور استفاده می کردیم جدول دارای فیلدهایی می شد که وابستگی مستقیم به کلید اصلی ندارند بنابراین نمی توانستیم به فرم 3NFبرسیم.) .جدول فاکتور دارای فرم 3NFاست و چون هیچ ستونی در ان دارای وابستگی چند مقداری نیست بنابراین حائز شرایط فرم 4NFاست، این شرایط را بر روی سایر جداول نیز بررسی می کنیم،اگر برقرار بود پایگاه داده دارای فرم 4NFاست

Compatability by:
آخرین به روز رسانی سایت: سه شنبه, 22 اسفند 1391 - 00:26