Re: Implicit constraints in a view
Date: 9 Nov 2006 09:25:28 -0800
Message-ID: <1163093128.148784.209280_at_m73g2000cwd.googlegroups.com>
NENASHI, Tegiri wrote:
> It is your fantasme about the constraint: 'type' is a virtual column
> that the clever implementation of insert can utilize as the selector
> but to update the virtual column, it does not have sense.
No virtual columns! We have two relation variables
RealPeople and Imposters
and three relation constants
R1 = {(typ=RMI)} R2 = {(typ=IRM)} R3 = {(typ=I)}
and the view written in RA as
(RealPeople/Impostors) x R1
U
(Impostors/RealPeople) x R2
U
(RealPeople/\Impostors) x R3
> I do not
> say that in your private modele it is not possible; it is possible but
> you must fix the rules of the play. One can not say: Oh we have that
> rule, oh, now we have this rule. One can talk about no matter what
> your private modele but you have to give the rules for the modele.
I'm not sure why you call my model "private". I have a set of relation variables, and a set of relation constants. I ask if a particular RA expression is updateable or not. What makes this problem different from view update?
> > I suggest that you are not allowed to do the following
> >
> > insert ('SomeGuy', 'NotAValidTyp') into AllPosters;
>
> In the modern SQL modele, one can not insert into the virtual column
> and it has a sense: it does not exist in the database. It is the same
> like to insert into a table that does not exist.
Nope. This update is not possible becase a user is not allowed to modify relation constants (nor introduce new ones). Received on Thu Nov 09 2006 - 18:25:28 CET