Re: Does entity integrity imply entity identity?

From: Mr. Scott <do_not_reply_at_noone.com>
Date: Thu, 6 Aug 2009 03:57:27 -0400
Message-ID: <BPadnZQTbZN6EefXnZ2dnUVZ_tadnZ2d_at_giganews.com>


"Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message news: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.

How, exactly? If you have columns K, A, B, and C such that for a given K it is permissible for the values for A, B or C to be at present unknown, but not both A and B, how would you lay out the tables and referential constraints without using nulls? Received on Thu Aug 06 2009 - 09:57:27 CEST

Original text of this message