Knowledge Of MS SQL Server

برای هرچیزی زکاتی است وزکات علم نشر آن است

Knowledge Of MS SQL Server

برای هرچیزی زکاتی است وزکات علم نشر آن است

طراحی دیتابیس ونرمال سازی

سه شنبه, ۱۸ تیر ۱۳۹۲، ۱۲:۴۶ ق.ظ

 برای طراحی دیتابیس ابتدا سناریوی کاملی را بر اساس مصاحبه انجام شده،تهیه می کنیم وسپس  موجودیت ها(Etity) را در متن سناریو مشخص می کنیم وزیر آن ها خط می کشیم.

Entity: موجودیتی محلی است که برای ذخیره Instance هایی(نمونه ها) از جنس خودش به کار می رود.Instance ها بر اساس  Attributeها(تشریح کننده) درون خود Entity  شکل می گیرند.برای شناسایی Entity ها از اسامی اشخاص ،مکان ها،مفاهیم وگاها افعال استفاده می کنیم ودر متن سناریو زیر آن ها خط می کشیم. بعد از مشخص کردن Entityها برای هر Entity یک جدول ایجاد می کنیم و جدول را باAttribute های لازم برای هر Entity  پر می کنیم.وسپس روابط بین جداول را ایجاد می کنیم.

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

مفاهیم نرمال سازی به شدت وابسته به مسائلی پیرامون تعریف کلید اصلی وستون های وابسته به آن است.

هر جدول باید یک وفقط یک موجویت را تعریف کندو هر جدول تنها باید یک کلید اصلی داشته باشد.

مراحل نرمال سازی بانک اطلاعاتی:

·         اولین شکل نرمال تماما درباره حذف کردن گروه های تکراری داده ها وتضمین یونیک بودن آن ها است.این شکل نرمال در سطح بالایی با ایجاد کلید اصلی ،سپس جابه جاکردن تمام گروه های داده تکراری به درون جدول جدید، ایجاد کلید های جدید برای جداول دیگر کار می کند.

·         دومین شکل نرمال سازی،جدا سازی جداول از یکدیگر است.شکل دوم نرمال دو قانون دارد:

1.      جدول باید قوانین مربوط به شکل اول نرمال را تأمین کند.

2.      هر ستون باید وابسته به کلید اصلی باشد.

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

  1.جدول باید در مرحله دوم نرمال باشد.

  2.هیچ ستونی نمی تواند به ستون غیرکلیدی دیگری وابستگی داشته باشد.

  3.نمی توانیم داده های مشتق شده داشته باشیم.

 

هر جدول ایجاد شده عبارت است از مجموعه نمونه هایی از داده ها که صفات عمومی یکسانی دارند.این نمونه داده ها به صورت ردیف ها وستون ها ی داده ها سازماندهی می شوند.

جدول باید نمایانگر مجموعه دنیای واقعی از داده ها ودارای روابطی با اطلاعات درون جداول دیگر باشد.به جداول نیز می توان عنوان موجودیت داد.

ERD(Entity Relationship Diagram): ترسیمی از روابط موجودیت های مختلف است.

روابط بین جداول:

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

سه نوع رابطه اصلی برای جداول وجود دارد:

·         یک به یک: همان طور که از نام آن پیداست این رابطه ،رابطه ای است که در آن رکوردی دریک جدول دقیقا یک رکورد متناظر در جدول دیگر دارد.درواقع در این نوع رابطه یک Entity تنها با یک Entity دیگر در ارتباط است.

 

·         یک به چند: در این نوع رابطه یک Entity  یا instance با چندEntity یا instance  دیگر می تواند رابطه داشته باشد.به این رابطه ،رابطه پدر وفرزند نیز می گویند.

·         چند به چند: در این رابطه هر دوطرف رابطه ممکن است چندین رکورد متناظر داشته باشند.به عنوان مثال رابطه محصولات وسفارش را در نظر بگیرید،یک سفارش مشخص می تواند محصولات بسیاری داشته باشد و به همین ترتیب هر محصول مشخص نیز می تواند چندین بار سفارش شود.

 

 

 

موافقین ۲ مخالفین ۰ ۹۲/۰۴/۱۸
فائزه فاضلی

نظرات  (۲)

۲۰ تیر ۹۲ ، ۰۲:۴۴ احمد تاج بخش
عالی بود....
۱۵ مرداد ۹۲ ، ۱۱:۵۱ میثم هوشمند
any thing else?

پاسخ:
در آینده ای نزدیک انشاالله

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی