Re: A Normalization Question
Date: Fri, 09 Jul 2004 16:32:12 GMT
Message-ID: <gMzHc.180582$Q%4.8677405_at_phobos.telenet-ops.be>
Marshall Spight wrote:
> "Neo" <neo55592_at_hotmail.com> wrote in message news:4b45d3ad.0407081947.37c553f9@posting.google.com...
>
>>>Because you're still confusing physical and logical >>>redundancy. And ironically, you're dragging normalization >>>down to physical storage, yet you're referring to it >>>as a "higher" form of normalization. >> >>Having the same person three times in a db is redundant. >>Having the same string three times in a db is redundant. >>Having the same thing three times in a db is redundant.
>
> You keep treating redundancy and normalization as if
> they were the same things; they're not.
It's the "remove it" part and the "losing information" part that are hard to formalize. However, you can interpret the first as saying that you replace the part in question with something like a wildcard or a null value, and the second as saying that you can derive the original value of the replaced part from the remainder of the instance and the constraints in the schema.
Suppose now I remove the first occurrence of the number 2:
A B C
1 ? 3
1 2 4
Can we still know the value of the removed part? Yes, we can, because of the FD A->B, so no information is lost, and hence the removed part is in fact redundant. I assume you know how to normalize this and you will then see that for the resulting schema it holds that in all its instances there is no part that is redundant.
It will probably also be clear to you that there is a close relationship between this type of redundancy and update anomalies, especially those that involve the update of a single field. Thus it is in fact correct to say that the goal of normalization is to remove such redundancy and that once you have removed all such redundancy there is no point in normalizing any further.
- Jan Hidders