Re: NULLs

From: JOG <jog_at_cs.nott.ac.uk>
Date: Thu, 27 Dec 2007 16:41:51 -0800 (PST)
Message-ID: <56f8a858-599d-4247-826c-32721b372c65_at_n20g2000hsh.googlegroups.com>


On Dec 27, 11:31 pm, Hugo Kornelis
<h..._at_perFact.REMOVETHIS.info.INVALID> wrote:
> On Wed, 26 Dec 2007 23:17:52 -0400, Bob Badour wrote:
> > Codd pointed out that a single NULL marker did not suffice and
> >suggested 2 markers. Date pointed out that one can apply the same
> >argument to 2 markers leading to an infinite progression once one heads
> >down that path, which suggests the path was never a productive one to
> >head down in the first place.
>
> Hi Bob,
>
> Unfortunately, both Codd and Date forgot that the NULL marker in (for
> instance) the age column should represent only that the age is not on
> file and not try to represent a reason for this as well.
>
> Codd's suggestions to use two markers (for "not applicable" and
> "unknown", IIRC) assumes that we want to store both the age of a person
> (if on file), and the reason why an age is not on file (if it isn't).
> That can of course be necessary - but in that case, we have two
> attributes that should be stored in two seperate columns.
>
> Attempting to store both the age and the reason why an age is unknown in
> a single column violates first normal form.

Is the Zaniolo approach you are favouring not doing exactly the same thing? Surely it is attempting to store both an age and the fact that an age is not on file in a single column, which also violates first normal form. It still appears to be a hack imo, and one still ends up with 3VL. There has to be a more elegant way....Regards, J.

>
> Best, Hugo
Received on Fri Dec 28 2007 - 01:41:51 CET

Original text of this message