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

From: Brian Selzer <brian_at_selzer-software.com>
Date: Mon, 17 Dec 2007 09:43:35 GMT
Message-ID: <bxr9j.54127$eY.45800_at_newssvr13.news.prodigy.net>


"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...
>>>
>>> "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?
>

Three.

> 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 Mon Dec 17 2007 - 10:43:35 CET

Original text of this message