Results 1 to 2 of 2
  1. #1
    Join Date
    Oct 2011
    Posts
    14

    Database normalization? beginner

    we just started database course and learning normalization.
    =================
    tution history shows course_fee fluctuations over years.

    TUTION_HISTORY [ YEAR, COURSE_ID (FK), COURSE_FEE ]

    invoice originally had a column course_fee

    INVOICE [ INVOICE_NO, CUSTOMER_ID (FK), INVOICE_DATE, DUE_DATE, CLASS_ID (FK), PPL_ATTENDED_TOTAL, TAX ]

    class has records of classes held and has course_id as foreign key.

    CLASS [ CLASS_ID, CLASS_DATE, COURSE_ID (FK), INSTRUCTOR_ID (FK), LOCATION_NAME(FK), PPL_ATTEND_PAID, PPL_ATTEND_NOTPAID ]

    courses

    COURSE [ COURSE_ID, COURSE_NAME, COURSE_LENGTH , COURSE_LEVEL ]

    =========
    i removed course_fee from invoice because my logic is that course fee can be found by going to class_id from invoice then to course and from course to tuition history that holds course_fee info. i.e. invoice -> class -> course -> tuition (course_fee).

    my question is is this the right logic in normalization process (1nf for now)? or this is totally stupid thing to do. we havent started sql yet so no idea of how things work in reality. im really having troubles understanding normal forms.
    Last edited by vegan_toronto; 10-18-11 at 19:48.

  2. #2
    Join Date
    Nov 2011
    Posts
    30
    Quote Originally Posted by vegan_toronto View Post
    we just started database course and learning normalization.
    =================
    tution history shows course_fee fluctuations over years.

    TUTION_HISTORY [ YEAR, COURSE_ID (FK), COURSE_FEE ]

    invoice originally had a column course_fee

    INVOICE [ INVOICE_NO, CUSTOMER_ID (FK), INVOICE_DATE, DUE_DATE, CLASS_ID (FK), PPL_ATTENDED_TOTAL, TAX ]

    class has records of classes held and has course_id as foreign key.

    CLASS [ CLASS_ID, CLASS_DATE, COURSE_ID (FK), INSTRUCTOR_ID (FK), LOCATION_NAME(FK), PPL_ATTEND_PAID, PPL_ATTEND_NOTPAID ]

    courses

    COURSE [ COURSE_ID, COURSE_NAME, COURSE_LENGTH , COURSE_LEVEL ]

    =========
    i removed course_fee from invoice because my logic is that course fee can be found by going to class_id from invoice then to course and from course to tuition history that holds course_fee info. i.e. invoice -> class -> course -> tuition (course_fee).

    my question is is this the right logic in normalization process (1nf for now)? or this is totally stupid thing to do. we havent started sql yet so no idea of how things work in reality. im really having troubles understanding normal forms.
    At a quick glance, it looks fine to me, although, where did the Location_Name in the Class table come from??

    Martin

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •