Re: Relation Schemata vs. Relation Variables
From: Jon Heggland <jon.heggland_at_idi.ntnu.no>
Date: Fri, 01 Sep 2006 21:43:45 +0200
Message-ID: <eda2ld$1ra$1_at_orkan.itea.ntnu.no>
>
> Natural join joins on all attributes with the same name. Given the
> rename operations specified, that would be every attribute except
> Salary. If one wanted to limit the join, one could rename additional
> attributes or project the relations onto the attributes of interest.
Date: Fri, 01 Sep 2006 21:43:45 +0200
Message-ID: <eda2ld$1ra$1_at_orkan.itea.ntnu.no>
Bob Badour wrote:
> Jon Heggland wrote:
>> vc wrote: >>> My point is that if 'update' is shorthand for the respective relational >>> assignment, then by the same token the update constraint must be >>> shorthand for the respective relvar constraint: IS_EMPTY(R RENAME >>> (Salary AS NewSalary) JOIN R' RENAME (Salary AS >>> OldSalary) WHERE NewSalary < OldSalary). >> >> In that case, the shorthand is insufficient, because it doesn't specify >> what you should join on. You could say it should join on the key by >> default, but what if there's more than one key? What if you want keys to >> be able to change?
>
> Natural join joins on all attributes with the same name. Given the
> rename operations specified, that would be every attribute except
> Salary. If one wanted to limit the join, one could rename additional
> attributes or project the relations onto the attributes of interest.
Not a bad idea, but you can't really apply it to Dataphor's TCs without changing the syntax quite a bit by involving explicit renames and/or projections. The resulting shorthand may not be all that short.
-- JonReceived on Fri Sep 01 2006 - 21:43:45 CEST