Re: two nasty schemata, union types and surrogate keys
From: Bob Badour <bbadour_at_pei.sympatico.ca>
Date: Tue, 22 Sep 2009 10:56:15 -0300
Message-ID: <4ab8d776$0$23752$9a566e8b_at_news.aliant.net>
>
> I flatter myself that I understand that completely. However we (me and
> Brian) seem to be talking about two different things. Brian has started
> talking about how a DBMS has to work, and I am talking about the
> assorted fantasies, lies, and honest-to-God truths end-users shovel into
> databases. Databases <> DBMSs.
>
> This gets important when we start designing systems for people to use,
> because anyone who undertakes that task imagining that the software must
> somehow ensure the database is a wonderland of infallible truths will
> end up with unusable and very expensive junk. I've seen it happen
> a couple of times, at great public expense.
Date: Tue, 22 Sep 2009 10:56:15 -0300
Message-ID: <4ab8d776$0$23752$9a566e8b_at_news.aliant.net>
Roy Hann wrote:
>>Roy Hann wrote: >> >> >>>Brian wrote: >>> >>> >>> >>>>>>>Whatever. What is in the database is supposed to be true. >>>>> >>>>>>>Says who? >>>>> >>>>>>Everyone who advocates the closed world assumption. >>>>> >>>>>The closed world assumption doesn't tell you anything about what is >>>>>actually in the database; it tells you how you are entitled to >>>>>manipulate what you find in the database. I hinted at that in >>>>>my first post when I wrote "All that matters is that we can make the >>>>>inferences that we should be entitled to make from the assertions." >>>> >>>>You're wrong, of course, but don't take my word for it. According to >>>>Date in /An Introduction to Database Systems, Eighth Edition/, page >>>>161: 'the Closed World Assumption (also known as the Closed World >>>>Interpretation) says that if an otherwise valid tuple--that is, one >>>>that conforms to the relvar heading--does /not/ appear in the body of >>>>the relvar, then we can assume the corresponding proposition is >>>>false. In other words, the body of the relvar at any given time >>>>contains /all/ and /only/ the tuples that correspond to true >>>>propositions at that time.' So the closed world assumption tells us >>>>that what is actually in the database is supposed to be true, while >>>>what is not is supposed to be false. >>> >>>Far be it from me to contradict Date, but there is no way on earth that >>>he intended us to take that to mean "Garabage In, Garbage Out" doesn't >>>apply to databases. >> >>Um, note the word "assume" in the quoted passage above. He doesn't say >>it is false only that we can assume it is. Also note the phrase >>"supposed to be". He doesn't say it is, which we have no way of >>validating from the dbms, only that it is supposed to be.
>
> I flatter myself that I understand that completely. However we (me and
> Brian) seem to be talking about two different things. Brian has started
> talking about how a DBMS has to work, and I am talking about the
> assorted fantasies, lies, and honest-to-God truths end-users shovel into
> databases. Databases <> DBMSs.
>
> This gets important when we start designing systems for people to use,
> because anyone who undertakes that task imagining that the software must
> somehow ensure the database is a wonderland of infallible truths will
> end up with unusable and very expensive junk. I've seen it happen
> a couple of times, at great public expense.
Don't kid yourself: It happens at great private expense too. Received on Tue Sep 22 2009 - 15:56:15 CEST