Re: So what's null then if it's not nothing?

From: Alexandr Savinov <spam_at_conceptoriented.com>
Date: Thu, 17 Nov 2005 14:29:49 +0100
Message-ID: <437c85de$1_at_news.fhg.de>


David Portas schrieb:

> Alexandr Savinov wrote:
> 

>>JOG schrieb:
> 
> 

>>But what if some
>>other object we need to add is known in advance to have no colour at
>>all? A formal criteria for "does not have a colour" is that we do not
>>want to see it when we select objects along dimension COLOUR.
>>
>>Theoretically, we might define such a structure of tables that this
>>situation is excluded. Practially, it is almost impossible so we need to
>> permit null value as an indication that some column is inappropriate
>>for this object (and this object will be invisible from the side of this
>>column).
>>
> 
> 
> If an "object" lacks the attribute of colour then surely it ought to be
> modelled by a relvar that doesn't have a colour attribute. Can you
> explain why this would be "almost impossible" given that you also said
> this fact is known in advance?

I meant that it is practically impossible taking into account complexity of real-world systems. The final design where null values will be made unnecessary may well be too granular (many tables with a few or even only one column).

Another reason is that we may well lack information about our problem domain so that we cannot guarantee that objects will have all attributes assinged to them in our schema. For example, assume that we have table Persons with the company employees. But today we had to hire a Marsian. Are you sure that it will have such a characteristics as sex? Maybe if we ask him then it will answer that he does not understand what we are talking about. Should we then take Marsians into account when we count the number of women and men in the company?

And the third reason is theoretical. Independent what happens in practice we would like our theory (data model) be general enough to explain very exotic cases. This inclues such extremes as one wide table with all possible columns and many narrow tables with a few columns.

-- 
http://conceptoriented.com
Received on Thu Nov 17 2005 - 14:29:49 CET

Original text of this message