Re: Jan's well-defined view updates definition

From: Jan Hidders <jan.hidders_at_pandora.be>
Date: Thu, 18 Sep 2003 20:42:46 GMT
Message-ID: <aNoab.27111$OG5.1550428_at_phobos.telenet-ops.be>


Bob Badour wrote:

> "Jan Hidders" <jan.hidders_at_ua.ac.be> wrote in message
> news:3f696e04.0_at_news.ruca.ua.ac.be...

>> Bob Badour wrote:
>> > "Jan Hidders" <jan.hidders_at_pandora.be> wrote in message
>> > news:d14ab.25480$rw3.1352807_at_phobos.telenet-ops.be...
>> >>
>> >> Lets say I have base relations R(a,b) and S(b,c) with a foreign key
>> >> R.b -> S.b and a view V that is defined by the natural join of R
>> >> and S. The additions and deletions are both well-defined but if I
>> >> add the tuple (a1,b1,c1) and then remove it then the end result is
>> >> an additional tuple (b1,c1) in S, which is not the same as the end
>> >> result of adding 0 tuples. So for the class of updates that
>> >> consists of inserts and deletes it is not commutatively updatable.
>> >
>> > Why would one have (b1,c1) in S instead of (a1,b1) in R or neither?
>>

>> The first option violates the foreign key and the second option deletes
>> more than necessary which violates the CWA.
> 
> Since the user instructed the dbms to delete the tuple with c1, I do not
> see how it violates the CWA.

The tuple (a1,b1,c1) in V is not equal to the tuple (b1,c1) in S. They are different values and represent different (although related) facts. Since the DBMS was told in the past that the fact represented by (b1, c1) in S was true and now is neither directly nor indirectly (it does not logically follow) told that it is false, it should assume that it is still true.

> I do, however, see how it ignores symmetry.

There is no symmetry in this case, the foreign key breaks it.

  • Jan Hidders
Received on Thu Sep 18 2003 - 22:42:46 CEST

Original text of this message