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  دیگر می تواند رابطه داشته باشد.به این رابطه ،رابطه پدر وفرزند نیز می گویند.

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

 

 

 

۲ نظر موافقین ۲ مخالفین ۰ ۱۸ تیر ۹۲ ، ۰۰:۴۶
فائزه فاضلی

پایگاه داده

جمعه, ۷ تیر ۱۳۹۲، ۱۲:۲۳ ق.ظ

پایگاه داده چیست؟

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

چهار پایگاه داده اولیه سیستم عبارتند از:

·         Master

·         Model

·         Msdb

·         Tempdb


Master

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

Model

این پایگاه داده مدلی است که بر اساس آن می توان کپی را ایجاد کرد والگویی را برای هر پایگاه داده جدید که ایجاد می کنیم به وجو می آورد.

Msdb

جایی که فرایندSql Agent  تمام وظایف سیستم را ذخیره می کند.اگر عملیات پشتیبان گیری را طوری زمانبندی کنیم که به طور شبانه اجرا شود یک ورودی در Msdb ایجاد خواهد شد؛همچنین اگر رویه ذخیره شده ای را برای یک بار اجرا زمانبندی کنیم یک ورودی در Msdb خواهیم داشت.

Tempdb

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

۳ نظر موافقین ۳ مخالفین ۰ ۰۷ تیر ۹۲ ، ۰۰:۲۳
فائزه فاضلی