Re: A Normalization Question

From: Paul Vernon <paul.vernon_at_ukk.ibmm.comm>
Date: Tue, 13 Jul 2004 11:35:24 +0100
Message-ID: <cd0e53$1p0a$1_at_gazette.almaden.ibm.com>


"Neo" <neo55592_at_hotmail.com> wrote in message news:4b45d3ad.0407121228.b967ece_at_posting.google.com...
> > Let's consider a small example. We take a relation R(A,B,C) with a
> > functional dependency A->B. Now consider the following instance:
> >
> > A B C
> > ---------
> > 1 2 3
> > 1 2 4
>
> What I am saying is assuming tuple1 only and no FD A->B; that 1 isa
> person, 2 is a color and 3 isa street all named by the same string
> 'brown' thus
>
> R2(1, 'brown')
> R2(2, 'brown')
> R2(3, 'brown')
>
> which further normalizes to
>
> R2(1, 10)
> R2(2, 10)
> R2(3, 10)
>
> AND
>
> R3(10, 'b', 'r', 'o', 'w', 'n')

Above you have added extra information (the 10). Normalization does not increase the amount of information in the database (in fact it keeps it the same).

If you do not consider the 10 to be information, then your model would have to consider the following sets as equal, and the statement as TRUE.

R2(1, 10), R2(2, 10), R2(3, 10), R3(10, 'b', 'r', 'o', 'w', 'n') = R2(1, 11), R2(2, 11), R2(3, 11), R3(11, 'b', 'r', 'o', 'w', 'n')

If you add information, you are modelling a different scenario

You should not be saying

    "which further normalizes to"

above, as it is *not a normalization*. You should rather say something like

    "which can be captured by this scenario (amongst others)"

Regards
Paul Vernon
Business Intelligence, IBM Global Services Received on Tue Jul 13 2004 - 12:35:24 CEST

Original text of this message