Re: Newbie question about db normalization theory: redundant keys OK?

From: Hugo Kornelis <hugo_at_perFact.REMOVETHIS.info.INVALID>
Date: Sun, 16 Dec 2007 23:52:39 +0100
Message-ID: <3rabm31r4vab1t5hn83qi9hslvvqk2kklr_at_4ax.com>


On Sun, 16 Dec 2007 02:57:36 GMT, Brian Selzer wrote:

>
>"David Cressey" <cressey73_at_verizon.net> wrote in message
>news:ncR8j.287$qv1.250_at_trndny01...
>>
>> "Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message
>> news:4763dc87$0$5291$9a566e8b_at_news.aliant.net...
>> [snip]
>>
>>> 6NF:
>>> R1(a*,b)
>>> R2(a*,c)
>>>
>>> 6NF has at most one non-key attribute.
>>
>> Thanks for the above definition. It's simple, and easily understood. I
>> actually "invented" this form on my own in my head, but didn't think it
>> was
>> important enough to merit giving it a name.
>>
>
>It's also wrong. Consider,
>
>R(a*,b*,c*) where a*, b* and c* are each keys,
>
>R is not in 6NF because it can be decomposed into
>
>R1(a*,b*) and
>R2(a*,c*)
>
>even though R doesn't have any non-key attributes!

Hi Brian,

How should I interpret R(a*, b*, c*)? As a relation with three candidate keys, each over one attribute? Or as a relation with a single candidate key over three attributes?

In the former case, R is indeed not in 6NF as I understand it. I guess that Bob was thinking about the primary key only when writing down his explanation for 6NF.

In the latter case, the decomposition is incorrect. R can't be decomposed.

Best, Hugo Received on Sun Dec 16 2007 - 23:52:39 CET

Original text of this message