چهارشنبه 2 آبان 1397 | Wednesday 24 th of October 2018 صفحه اصلی گروه الکترونیکی کامپیوتر
3-2-1 فرم های نرمال

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

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

فرم های نرمال عبارتند از:

First Normal Form(1NF)   
SecondNormal Form(2NF)
Third Normal Form(3NF)
Forth Normal Form(4NF)
Boyce/Codd Normal Form(BCNF)
Fifth Normal Form(5NF)
Domain/Key Normal Form(DKNF)

    اگر فرم اول نرمال در جدولی مشاهده شود اصطلاحا انرا در فرم اول نرمال (1NF) می نامند. اگر سه فرم اول نرمال دیده شود انرا در فرم سوم نرمال (3NF) درنظر می گیرند. جدولی که دارای فرم نرمال درجه بالاتر باشد فرم های نرمال درجه پائین تر را هم دارا می باشد. بنابراین مثلا اگر جدولی 3NFباشد 2NFو 1NFهم هست. ولی عکس این صحت ندارد.

    توجه داشته باشید که نرمالسازی یک فرایند تکراری نیست. یک جدول ممکن است در یک مرحله به فرم سوم نرمال دربیاید. بعلاوه اگر 3NFباشد به احتمال بسیار زیاد 5NFهم خواهد بود.

    فرم نرمال هریک باعث کاهش بیشتر افزونگی و تقسیم جداول به واحدهای کوچکتر می شوند. سه فرم اول نرمال (1NF، 2NFو 3NF) در ابتدا توسط Coddتعریف شد که به طور خلاصه وابستگی صفات خاصه غیر کلید را به کلید الزام می کنند. فرم های چهارم و پنجم (4NFو 5NF) با ارتباطات چند به چند و یک به چند بیت صفات خاصه سروکار دارند. دو فرم دیگر هم وجود دارد که کاملا با این جریان جور نمی شوند که BCNFو DK/NFهستند. در برنامه های کاربردی اغلب 1NF، 2NFو 3NFو گاهی 4NFو 5NFدیده خواهند شد.

 (1NF) First Normal Form

   یک جدول در فرم اول نرمال (1NF) استاگر و فقط اگر فاقد گروه داده تکرار شونده باشد. به عبارت دیگر هر ستون در جدول دارای مقدار اتمیک باشد.

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

(2NF) Second NormalForm

    یک جدول در فرم دوم نرمال (2NF) است اگر اولا 1NFباشد و ثانیا کلیه ستون های غیرکلید با کلید اصلی وابستگی تابعی کامل داشته باشند.

ستون Yبا ستون Xدر یک رابطه وابستگی تابعی (functional dependency) دارد اگروفقط اگر به ازای هر مقدار در Xدقیقا یک مقدار در Yمتناظر با ان وجود داشته باشد. که به صورت X→Yنشان داده میشود.

(3NF) Third NormalForm

    یک جدول در فرم سوم نرمال (3NF) است اگر اولا 2NFباشد، ثانیا کلیه صفاتخاصه غیر کلید در جدول با کلید اصلی وابستگی تابعی غیر تعدی داشته باشند.

وابستگی تعدی (transitive dependency) یک وابستگی تابعی غیر مستقیم است که در ان X→Zاست اگر X→Yو Y→Zباشد.

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

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

(4NF) Fourth NormalForm   

یک جدول در فرم چهارم نرمال (4NF) است اگر اولا 3NFباشد، ثانیا هیچ ستونی در جدول وابستگی چند مقداری نداشته باشد.

وابستگی چندمقداری (multivalued dependency) به این معنی است که حضور رکوردهای معینی در جدول وجود رکوردهای معین دیگری را برساند.

   حال با توجه به تعاریف ذکر شده وضعیت نرمال سازی را در مورد جداول طراحی شده بررسی می نماییم.

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

جداول استاندارد،نقشه ،تست وپلن طرح بسته بندی در سطح دوم قرار دارند چونکلیه ستون های غیرکلید با کلید اصلی وابستگی تابعی کامل داشته باشند.

جداول استاندارد مرتبط و معادل -  جداول نقشه قدیمی و مرتبط در سطح سوم

  

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