دوست عزیز، به سایت علمی نخبگان جوان خوش آمدید

مشاهده این پیام به این معنی است که شما در سایت عضو نیستید، لطفا در صورت تمایل جهت عضویت در سایت علمی نخبگان جوان اینجا کلیک کنید.

توجه داشته باشید، در صورتی که عضو سایت نباشید نمی توانید از تمامی امکانات و خدمات سایت استفاده کنید.
نمایش نتایج: از شماره 1 تا 8 , از مجموع 8

موضوع: طراحي پايگاه داده (Database Design) به زبان ساده

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #2
    مدیر کـــــــل ســــایت
    رشته تحصیلی
    مهندسی کامپیوتر - نرم افزار
    اکانت شخصی
    ندارد
    نوشته ها
    7,883
    ارسال تشکر
    9,788
    دریافت تشکر: 29,042
    قدرت امتیاز دهی
    13977
    Array
    Admin's: جدید39

    پیش فرض پاسخ : طراحي پايگاه داده (Database Design) به زبان ساده

    طراحي پايگاه داده (Database Design) به زبان ساده (قسمت دوم)


    تعريف روابط در پايگاه داده
    به مثال مشتري ، كالا و سفارش كالا برميگرديم .ميتوان گزاره‌‌‌ هاي زير را بيان كرد :
    يك سفارش مي تواند شامل چند كالا باشد
    يك سفارش تنها به يك مشتري مربوط است
    هر مشتري مي تواند چندين سفارش داشته باشد
    به زبان پايگاه داده ، اين گزاره ها روابط ميان جدولها را بيان مي كنند. اين روابط را مي توان در نمودار موجوديت ها (ERD) نمايش داد ( شكل 7)
    روابط ميان موجوديت ها مي توان به 3 صورت باشد :
    1-يك به يك (One to One )
    2-يك به چند (One to Many )
    3-چند به چند (Many to Many)
    در ادامه به تشريح هريك از اين روابط مي پردازيم
    رابطه يك به يك
    رابطه يك به يك مشابه تناظر يك به يك در رياضيات است . دراين نوع از رابطه، هر ركورد از جدول اول تنها و تنها با يك ركورد در جدول دوم رابطه دارد. براي مثال فرض كنيد اطلاعات هر مشتري 100 فيلد دارد و پايگاه داده ما اين تعداد فيلد را پيشتيباني نمي كند بنابراين بخشي از اطلاعات مشتري را در جدولي بنام CustomerDetial قرار مي دهيم .اين جدول با جدول Customer رابطه يك به يك دارد. فيلدي كه اين دو جدول را بهم مرتبط مي سازد فيلد Customernumber مي باشد. (شكل 8 )

    به اعداد 1 و1 روي خط مرتبط كننده دقت كنيد. اين نشان دهنده رابطه يك به يك است.

    رابطه يك به چند
    دراين نوع از رابطه هر ركورد از جدول اول مي تواند با چند ركورد در جدول دوم رابطه داشته باشد. مثال مشتري و سفارش نمونه‌‌اي مناسب براي اين رابطه است. هر مشتري مي تواند چندين سفارش داشته باشد يعني هر ركورد ( مشتري) از جدول Customer مي تواند با چند ركورد ( سفارش) از جدول Order مرتبط باشد (شكل 9 )
    به عدد 1 و علامت بي نهايت روي خط مرتبط كننده دقت كنيد اين نشان دهنده رابطه يك به چند است و اينچنين خوانده مي شود : هر ركورد از جدول مشتري ميتوان با چند ركورد از جدول سفارش مرتبط باشد.

    رابطه چند به چند
    اينجاست كه دنيا آشفته و پيچيده مي شود. دراين نوع از رابطه هر ركورد از جدول اول مي تواند با چند ركورد در جدول دوم رابطه داشته باشد و بالعكس.
    اما چگونه مي توان اين پيچيدگي و آشفتگي را حل كرد ؟
    با استفاده از يك جدول سوم يا جدول واسط مي توان اين مشكل را برطرف نمود.
    فرض كنيد كه يك سيستم كاربران (User) زيادي دارد و هر كاربر مي تواند نقش هاي (Role) متفاوتي داشته باشد به عبارت ديگر :
    هر كاربر مي تواند چند نقش داشته باشد
    هر نقش مي تواند به چند كاربر مربوط باشد
    براي ارتباط برقرار كردن ميان دو جدول كابران (Users) و نقش ها (Roles) جدول واسطي ميان اين دو جدول بنام نقش كاربران(Userroles) ايجاد مي كنيم. اكنون هر دو جدول كاربران و نقش ها با اين جدول رابطه يك به چند دارند. بنابراين يك رابطه چند به چند را به دو رابطه يك به چند تبديل نموديم : (شكل 10 )
    به زبان ديگر :
    Many to Many = One to Many + One to Many
    به اطلاعات اين جداول دقت نماييد :
    يكپارچگي ارجاع (Referential Integrity)
    با ايجاد رابطه ميان جدوال از مزيتي بنام يكپارچگي ارجاعي استفاده مي كنيم . مزيت يكپارچگي بطور خلاصه به موارد زير اشاره دارد :
    1- به روز رساني آبشاري : يعني هر گاه فيلد كليدي در يگ جدول تغيير كرد اين تغيير بايد در جدوال ديگر كه از طريق اين فيلد با جدول مربوطه در ارتباطند نيز اعمال گردد.
    2- حذف آبشاري : يعني هر گاه قرار است فيلد كليدي از يگ جدول حذف شود بايد اطمينان حاصل شود كه در تمام جدوال مرتبط حذف صورت پذيرفته است.
    توجه داشته باشيد كه يكپارچگي ارجاعي اگرچه معمولا يك مزيت بشمار مي رود ولي گاهي اوقات مساله ساز نيز مي شود.

    نرمال سازي (Normalization)
    ساختن يك پايگاه داده مانند ساختن يك خانه است. آيا براي ساختن يك خانه دانستن تعداد اتاق هاي مورد نياز كافي است و يا اينكه بايد به پارامترهاي ديگر نيز توجه داشت تا بتوان نقشه‌اي بهينه براي خانه تهيه كرد. نرمال سازي در واقع فرايند تهيه طرح بهينه براي يك پايگاه داده است.نرمال سازي مراحلي دارد و بايد به يك قانون توجه داشت :

    هرچه در مرحله بالاتري از نرمال سازي باشيد پايگاه داده شما طرح و ساختاري كاراتر خواهد داشت.

    نرمال سازي سطح اول(First normal form)
    در نرمال سازي سطح اول گروه هاي تكراري را حذف نماييد.
    اين گروههاي تكراري ميتوانند دو حالت را در بر مي گيرند :
    1-در يك فيلد داده هاي زياد و طولاني قرار مي گيرد.
    2-دو فيلد مشابه وجود دارد.
    براي مثال جدول مشتري را در نظر بگيرد ) شكل 11 )

    در اين جدول به فيلد آدرس مشتري Customer Address توجه كنيد. اطلاعات زيادي در اين فيلد قرار مي گيرند و عملا قابليت بازيابي اطلاعات كاهش مي يابد. اين فيلد را مي توان به پنج فيلد آدرس مشتري ، شهر مشتري ، استان مشتري ، كد پستي و كشور مشتري تقسيم نمود. (شكل 12 )
    اكنون به جدول سفارشات توجه نماييد ( شكل 13 ) . در اين جدول فيلدهاي تكراري مانند شماره ، قيمت و مقدار كالا وجود دارد.
    براي نرمال كردن اين جدول فيلدي تحت عنوان شماره سفارش به جدول اضافه مي كنيم و فيلدهاي اضافه را حذف مي كنيم :


    اين اطلاعات در جدول بصورت زير خواهند بود .
    نخبه یعنی خودباوری انسان و پس از خود باوری کاری غیر ممکن نمی شود

  2. 3 کاربر از پست مفید Admin سپاس کرده اند .


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. مقاله: سیستم عامل ( مقاله )
    توسط Admin در انجمن بخش مقالات نرم افزار
    پاسخ ها: 9
    آخرين نوشته: 25th April 2013, 02:33 AM
  2. مقاله: شبكه چيست و چرا به شبكه نيازمنديم ؟
    توسط Admin در انجمن شبکه های جونیپر
    پاسخ ها: 2
    آخرين نوشته: 4th October 2009, 02:52 PM
  3. مقدمانی بر آموزش dreamweaver
    توسط Admin در انجمن طراحی CMS
    پاسخ ها: 0
    آخرين نوشته: 9th September 2008, 07:50 PM

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •