Re: NULLs: theoretical problems?

From: David Portas <REMOVE_BEFORE_REPLYING_dportas_at_acm.org>
Date: Sat, 11 Aug 2007 13:16:07 -0000
Message-ID: <1186838167.615959.138600_at_r34g2000hsd.googlegroups.com>


Hugo,

I had started to write a lot of rubbish to explain my position further. I now agree with Jan that it is a futile exercise in the absence of any formal foundation dealing with nulls.

I just want to make one remark about decomposition, using the following example. The non-relational table R where a is a key:

R

   a | b  | c
  ===|----|-------
   1 | 10 | foo
   2 | 20 | <null>
   3 | 30 | bar

Can be "decomposed" into 2 relations having key dependencies {a}->{b} and {a}->{c} (notice I didn't say whether those dependencies were ever present in the table R):

R1

   a | b
  ===|----
   1 | 10
   2 | 20
   3 | 30

R2

   a | c
  ===|-------
   1 | foo
   3 | bar

Most database designers apply decomposition to some extent as part of the design process. In this sense, nullable columns indicate a decision - conscious or otherwise - to stop decomposing further, often on the pragmatic grounds that a version with nulls is somehow simpler or cheaper or more efficient to implement in a chosen DBMS. This was my original point of departure: that normalization eliminates the need for nulls.

--
David Portas
Received on Sat Aug 11 2007 - 15:16:07 CEST

Original text of this message