Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Is the use of VARCHAR(256) as Primary Keys preferred in Oracle?

Re: Is the use of VARCHAR(256) as Primary Keys preferred in Oracle?

From: Howard J. Rogers <howardjr2000_at_yahoo.com.au>
Date: Fri, 22 Nov 2002 11:17:41 +1100
Message-ID: <cAeD9.81459$g9.229455@newsfeeds.bigpond.com>

"Paul Brewer" <paul_at_paul.brewers.org.uk> wrote in message news:3ddd6f87$2_3_at_mk-nntp-1.news.uk.worldonline.com...
> "Howard J. Rogers" <howardjr2000_at_yahoo.com.au> wrote in message
> news:FYVC9.80802$g9.227327_at_newsfeeds.bigpond.com...
> > Whatever happened to Boyce-Codd Normal Form, huh??
> >
> > Huh?
> >
> > Come on... TNF is for wimps.
> >
> > Regards
> > HJR
> > ;-)
> >
> Howard,
>
> Have to (yet again) confess ignorance. I am familiar with Uncle Ted's
> principles, but I have never heard of Mr. Boyce.
> Is this 4NF and 5NF? (Attribute, Value pairs) and all that stuff? If so,
I'd
> theoretically like the idea of designing the entire application in one
> table, but I might have a slight concern about how it would eventually
> perform in the real world <g>
>
> Regards,
> Paul

Are you sitting comfortably? Then I shall begin.

A relation is in Boyce-Codd Normal Form (BCNF) if every determinant is a candidate key.

Or, as I saw it put more pithily (and accurately, if more inscrutibly):

relation R with FDs F is in BCNF if, for all X ? A in F+ (where X contains a key for R)

Got that? No??

In other words (hold on to your hats):

R is in BCNF if the only non-trivial FDs over R are key constraints.

From this it follows (follows???!) that there is no dependency in R that can be predicted using FDs alone, and also that if we are shown two tuples that agree upon the X value, we cannot infer the A value in one tuple from the A value in the other.

Dontyajustlurve this stuff??!

I confess to having lifted this lock, stock and several smoking barrells from a couple of sites trawled after searching on Google.

All I really know about BCNF in plain English is that it is more normalised than 4NF or 5NF. It is, in fact, the most normalised you can get -it's actually theoretically impossible to normalise further than good old BCNF. Which is why no-one uses it because attempting to do so would burst several blood vessels in the brain and result in absolutely abysmal performance.

But I like trotting it out at dinner parties, just to impress.

The last dinner party to which I was invited was in 1986. I wonder why?

:-)

Regards
HJR Received on Thu Nov 21 2002 - 18:17:41 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US