Re: insert different from union?

From: Paul Vernon <paul.vernon_at_ukk.ibmm.comm>
Date: Tue, 27 Jan 2004 17:29:17 -0000
Message-ID: <bv67dp$1mhc$1_at_gazette.almaden.ibm.com>


"Bob Badour" <bbadour_at_golden.net> wrote in message news:M6-dndRhUvJNHovdRVn-uw_at_golden.net...
> "Paul Vernon" <paul.vernon_at_ukk.ibmm.comm> wrote in message
> news:bv5odr$1me2$1_at_gazette.almaden.ibm.com...
[snip]
> > Of course I could be wrong, and that some consistent method of
identifying
> > 'updated rows' would be usefull. But, it all just smacks of row level
> > thinking in my opinion.
>
> It would nevertheless trigger an assignment trigger even if it does not
> trigger an insert, update or delete trigger.

> The question is: If we are to have an short-hand for a trigger condition
> called update trigger, what is the condition?

I suggest that it would have to take into consideration the candidate keys on the affected relvars.

One consideration is whether we would want to enforce that number of old rows updated equals the number of new rows updated. E.g.

If R equals { <SSN:1023, Name:"John", Age:65>, <SSN:2345, Name:"Jane", Age:55> }
and has two candidate keys {a}, {b}

and S equals { <SSN:2345, Name:"John", Age:60 }

Then after
R := S

would we want to say that two rows *were* updated but only one row *has been* updated?

One way forward would be to require an update trigger to specify which candidate key is to be used to identify updates. Hey, maybe it could be called a 'primary key' :-).

Regards
Paul Vernon
Business Intelligence, IBM Global Services Received on Tue Jan 27 2004 - 18:29:17 CET

Original text of this message