Re: Must we also create separate tables?

From: <patrick61z_at_yahoo.com>
Date: Fri, 31 Oct 2008 13:06:11 -0700 (PDT)
Message-ID: <731e22b2-e441-4ccb-95df-69df98aec985_at_a3g2000prm.googlegroups.com>


On Oct 26, 4:00 pm, Sru..._at_gmail.com wrote:
> greetings
>
> My book claims that for table to be in 1NF, we must:
>
> * Eliminate remove repeating groups of data
> * Create separate tables for each group of related data and identify
> each row with a unique column ( the primary key )
>
> I know that for table to be in 1NF, we must remove repeating groups
> of data. But is it ( for relation to be in 1NF ) also required to
> create separate tables for each group of related data or is that just
> recommended and thus optional?
>
> Say we have non-normalized table STUDENT:
>
> STUDENT ( STUDENT#, STUDENT_NAME, SUBJECT1#, SUBJECT2#, SUBJECT1_NAME,
> SUBJECT2_NAME, TEACHER1_NAME, TEACHER2_NAME )
>
> I realize best thing to do would be to create two tables:
>
> STUDENT-SUBJECT ( STUDENT#, SUBJECT#, SUBJECT_NAME, TEACHER_NAME )
>
> STUDENT ( STUDENT#, STUDENT_NAME)
>
> But would the following table also be considered in 1NF:
>
> STUDENT ( STUDENT#, STUDENT_NAME, SUBJECT, SUBJECT_NAME, TEACHER )
>
> I realize the first option is much better, but my book gives an
> impression as if separate tables must also be created for related
> repeating groups of data in order for table to be 1NF compliant. Which
> doesn't make sense.
>
> thank you

Its probably more dependent on your instructor / boss than it is being a real technical issue. Repeating groups are starting to be implemented by even mainstream rdbms's. Often trying to be strictly compliant to relational theory will actually cost you a bit when trying to actually get work done. Just an opinion tho. Received on Fri Oct 31 2008 - 21:06:11 CET

Original text of this message