نمایش نتایج 1 تا 7 از 7

نام تاپیک: 1NF و 2NF

  1. #1

    1NF و 2NF

    سلام
    فرض کنید 4 تا فیلد توی یه جدول به حالت زیر داریم:
    Author_Name,Book_Tiltle, Book_Pages, Author_Address
    میشه توضیح بدین که بعده اعمال 1NF جدول به چه شکلی در میاد و بعده اعمال 2NF چه شکلی میشه
    رابطه کتاب با نویسنده هم n به n هستش
    البته میدونم در نهایت جدول بالایی به 3 جدول تبدیل میشه یکیش جدول نویسنده؛ یکیشم جدول کتاب؛ و آخریشم واسه ارتباط این 2 جدول به کار میره .

  2. #2
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    ۱- اینها id ندارند؟؟ یا میشه براشون گذاشت؟
    ۲- pages به مفهوم تعداد صفحات (یک عدد) است؟
    ۳- هر نویسنده فقط یک آدرس داره؟
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

  3. #3
    خوب فرض کنیم id همون اسم نویسنده با اسم کتابه( البته فرض میشه)
    دوباره فرض شه که رابطه آدرس با نویسنده 1 به 1 هستش
    page هم تعداد صفحات کتاب رو نشون میده

  4. #4
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    خوب فرض کنیم id همون اسم نویسنده با اسم کتابه( البته فرض میشه)
    این فرض زیاد جالب نیست، اما خوب.

    اون فیلد هایی که دورشون پرانتزه، یعنی کلید اصلی اند:

    NF1
    ==============
    author
    ------------------------------
    name, address
    ------------------------------
    book
    ------------------------------
    title, pages
    ------------------------------
    book_has_author
    ------------------------------
    aname,btitle


    NF2
    ==============
    author
    ------------------------------
    (id),name, address
    ------------------------------
    book
    ------------------------------
    (id),title, pages
    ------------------------------
    book_has_author
    ------------------------------
    (aid,bid)

    %end
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

  5. #5
    خوب مشکل من اینجاست که فرض کنیم هر نویسنده چندین کتاب داره و اسامی این کتابا توی فیلد کتاب ذخیره شده. چون 1NF میگه مقدار داخل هر cell باید اتومیک باشه پس در این حالت جدول ما داره 1NF را نقض می کنه.حالا راه حل چیه؟
    چند جا دیدم که نوشتن باید موجودیت ها رو جدا کنیم مثلا مشخصات نویسنده توی جدول نویسنده و مشخصات کتاب توی جدول کتاب ذخیره شه و یه جدول هم برای مچ کردن این دو جدول.
    یه چند جا هم دیدم که نوشتن همین که برای همون جدول اصلی یه کلید اصلی تعریف کنیم و مقادیری که توی cell ها وجود دارن رو توی سطر ها پخش کنیم مثل اینکه بگیم سطر اول مربوط به نویسنده ی اوله که کتاب 1 رو نوشته و سطر دوم مربوط به نویسنده ی اوله که کتاب 2 رو نوشته. درسته تو این حالت مقادیر تکرار میشن ولی مساله ی تکرار فیلد ها حذف میشه در نتیجه جدول به صورت 1NF هستش. و توی2NF هستش که موجودیت نویسنده و کتاب از هم جدا میشن.
    حالا کدومش درسته؟
    اینی که شما نوشتین مربوط به حالت اولی میشه

  6. #6
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    من فرم غیر نرمال رو که ننوشتم!!
    اولی نرمال ۱ و دومی نرمال ۲ است!
    حالا مشکل تو دقیقا با اینایی که من نوشتم چیه؟
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

  7. #7
    من هیچ مشکلی با نرمال سازی شما ندارم
    میگم چند تا مقاله خوندم که 2 روش برای 1NF کردن جدول نوشته بودن که گفتم حالا می خوام ببینم کدومش درسته؟
    شما که اومدین توی 1NF موجودیت نویسنده و کتاب رو از هم جدا کردین

قوانین ایجاد تاپیک در تالار

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