Re: On view updating

From: Peter Koch Larsen <pklspam_at_mailme.dk>
Date: Sun, 19 Sep 2004 10:24:21 +0200
Message-ID: <Vmb3d.50270$Vf.2438722_at_news000.worldonline.dk>


"Alfredo Novoa" <alfredo_at_ncs.es> skrev i en meddelelse news:e4330f45.0409180524.3bc9d3fc_at_posting.google.com...
> What do you think about this?
>
> http://www.dbdebunk.com/page/page/1396086.htm
>
> I can't agree more with this:
>
> ---
> I therefore have come to believe that "view updateability" should be
> allowed to happen IF AND ONLY IF the system has PRECISELY ONE WAY to
> "resolve" the user's request.
> ---

I do not agree. Remove the "AND ONLY IF", and we can talk.

>
> In my opinion any approach to the view updating problem that is not
> based in logical inference is an absurd.
>
> And a DBMS designed to make "inferences" like this:
>
> A or B => C
> C
> -----------
> A and B
>
> is something really awful and this is the behavior we can obtain from
> the application of Date & McGoveran's union update rules.

Yes - the rules for view updates in the third maniphesto are downright awful.

>
> A DBMS that does this is a DBMS that lies, and this is not a very nice
> property for a DBMS IMO.
>
> On the other hand, the rules are not able to infere updates so trivial
> like this:
>
> var r relation { a integer, b integer } key { a, b };
> var v view r where b = 1;
>
> insert into v relation { tuple { a 1 } };
>
> Any little child would infere that the base relvar update should be:
>
> insert into r relation { tuple { a 1, b 1 } };

Now I do not know what rules you are talking about. A sensible DBMS should have no problem with the above deduction.

>
> In the case of the join rules the problems are very numerous.
>
> I agree on that not everything must be based in logic, but view
> updating definitely must be.
>
> I sympathize a lot more with what McGoveran said like:
>
> ---
> 3. A DBMS that supports the relational model cannot be "magic." It
> cannot compensate for ambiguity, intuit withheld information or
> assumptions, or correct expressions that violate the designer's or
> user's intent. If the designer fails to capture information in
> database design, if information is hidden from the user, or if the
> user incompetently fails to express their intent [Ed. Note: Or if the
> data language is not sufficiently expressive], it will certainly
> produce seemingly anomalous or "surprising" results when faced with
> these problems.
> ---
>
> A DBMS must not make wrong inferences, and whether a correct inference
> leads to surprising or counter intuitive results, it is a database
> designer's fault and not a DBMS flaw.
>
>
> Regards
> Alfredo

Why not read some "real" database theory? I believe Jan Hidders wrote something about updates of views. You could also check the work of Stephen Hegner (http://www.cs.umu.se/~hegner/Publications/db.html).

/Peter Received on Sun Sep 19 2004 - 10:24:21 CEST

Original text of this message