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

From: Brian Selzer <brian_at_selzer-software.com>
Date: Mon, 17 Dec 2007 17:14:54 GMT
Message-ID: <i8y9j.31860\$JD.18849_at_newssvr21.news.prodigy.net>

"Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message news:47669999\$0\$5290\$9a566e8b_at_news.aliant.net...
> David Cressey wrote:
>
>> "Hugo Kornelis" <hugo_at_perFact.REMOVETHIS.info.INVALID> wrote in message
>> news: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...
>>>>
>>>>>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 this case, R is not in 5NF either, is it? While Bob didn't explicitly
>> say so isn't it presumed among us that the definition of 6NF includes the
>> restriction that it must also be in 5NF?
>
> Bob just gave a simple and informal explanation for why one relation was
> not in 6NF. With the formal definition of 6NF, one can decompose R by
> arbitrarily choosing any 2 of the 3 combinations of 2 attributes from R.

Is someone out there impersonating Bob? Received on Mon Dec 17 2007 - 18:14:54 CET

Original text of this message