Re: Does entity integrity imply entity identity?

From: Bob Badour <bbadour_at_pei.sympatico.ca>
Date: Wed, 05 Aug 2009 23:39:24 -0300
Message-ID: <4a7a425c$0$23748$9a566e8b_at_news.aliant.net>


Mr. Scott wrote:

> "Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message 
> news:4a7a22e9$0$23782$9a566e8b_at_news.aliant.net...
> 

>>Bob Badour wrote:
>>
>>
>>>Mr. Scott wrote:
>>>
>>>
>>>>"Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message
>>>>news:4a799414$0$23781$9a566e8b_at_news.aliant.net...
>>>>
>>>>
>>>>>Mr. Scott wrote:
>>>>>
>>>>>
>>>>>>"Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message
>>>>>>news:4a784836$0$23766$9a566e8b_at_news.aliant.net...
>>>>>>
>>>>>>
>>>>>>>Mr. Scott wrote:
>>>>>>>
>>>>>>>
>>>>>>>>>The entity integrity rule is generally presented as a subrule under
>>>>>>>>>Codd's rule 10.
>>>>>>>
>>>>>>>I don't know why you would say that when the description of the
>>>>>>>so-called "entity integrity" basically restates Rule 2 verbatim.
>>>>>>
>>>>>>I don't think that's true. Although the entity integrity rule implies
>>>>>>the guaranteed access rule, the guaranteed access rule doesn't imply
>>>>>>the entity integrity rule. The guaranteed access rule doesn't say
>>>>>>anything at all about nulls.
>>>>>
>>>>>As Martha would say: This is a good thing. Null was a bad idea in the
>>>>>first place.
>>>>
>>>>Why was it a bad idea?
>>>
>>>Entire books have been written on that subject. I suggest you read one or
>>>two of them. See for example Date's various _Writings..._ books.
>>>
>>>
>>>
>>>>Is there a reasonable alternative?
>>>
>>>Yes. Nothing at all is a reasonable alternative to anything as bad as
>>>null. If it ain't broken, don't try to fix it. If it is broken, don't
>>>break it worse.
>>
>>Perhaps I should clarify: Your question amounts to asking if one has a
>>reasonable alternative to poking oneself in the eye with an icepick.
> 
> If the requirement is to record in the database as much information as is 
> available, then how can the fact that a value is at present unknown be 
> recorded?

By stating so in the database. That's what relations do: make statements. Received on Thu Aug 06 2009 - 04:39:24 CEST

Original text of this message