Re: Does entity integrity imply entity identity?

From: Nilone <reaanb_at_gmail.com>
Date: Fri, 7 Aug 2009 00:09:05 -0700 (PDT)
Message-ID: <157f987e-1c58-4fdd-9efd-66c6c7db70a8_at_o13g2000vbl.googlegroups.com>


On Aug 7, 6:03 am, "Walter Mitty" <wami..._at_verizon.net> wrote:
> "Nilone" <rea..._at_gmail.com> wrote in message
>
> news:d218288c-7a72-4b77-900e-8fa39fcdae6a_at_l34g2000vba.googlegroups.com...
> On Aug 6, 10:13 pm, "Mr. Scott" <do_not_re..._at_noone.com> wrote:
>
>
>
> > <snip>
>
> > > > > 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?
>
> > > > Here's a more concrete example. Software can be delivered to a
> > > > customer
> > > > over the internet or through the mail or both, but in order to deliver
> > > > over
> > > > the internet there must be an e-mail address, and in order to deliver
> > > > through the mail there must be a snail-mail address. There may also be
> > > > a
> > > > delivery contact phone number. So for a given order K, there must be
> > > > at
> > > > least one of an e-mail address A or a snail-mail address B, and there
> > > > may be
> > > > a delivery phone number C.
>
> > > Three separate relations: {K -> A}, {K -> B}, {K -> C}. It doesn't
> > > enforce the requirement for at least A or B, but neither does {K -> A,
> > > B, C} where A, B and C are nullable.
>
> > CREATE TABLE T
> > (
> > K INT NOT NULL PRIMARY KEY,
> > A VARCHAR(40) NULL,
> > B VARCHAR(160) NULL,
> > C VARCHAR(20) NULL,
> > CHECK (A IS NOT NULL OR B IS NOT NULL)
> > )
>
> > enforces the requirement for either A or B.
>
> I see your point.  While searching for information on this topic, I
> came across the following paper:
>
> Incorporating record subtyping into a relational data modelhttp://dbis.eprints.uni-ulm.de/377/1/KaDa94.pdf
>
> If anyone has any opinions or further information on record subtyping,
> I'd like to hear about it.
>
> Do a web search on "generalization specialization relational modeling".
> You'll find several interesting articles.

Thanks! Among other things I discovered RM/T and got a copy of Codd's original paper. Interesting stuff. Received on Fri Aug 07 2009 - 09:09:05 CEST

Original text of this message