Re: header part of the value?
Date: Wed, 27 Feb 2008 23:56:01 -0800 (PST)
Message-ID: <2c892007-19bb-45ce-b73c-6cdc6c8de229_at_o77g2000hsf.googlegroups.com>
On 24 feb, 19:48, Marshall <marshall.spi..._at_gmail.com> wrote:
> Occasionally the question has come up as to whether a
> relation value is the body, or the body+the header. In the past
> I've sided with the just-the-body approach, but today I decided
> that I don't think that anymore.
>
> Consider the algorithm to perform a natural join on two
> relation values. Just values: not tables in a database
> with a known schema or whatever. Just two plain relation
> values. The natural join specification *requires* the header;
> it is defined (in part) in terms of the header. So the header
> must be part of the value.
That is not correct. The natural join can be defined without referring to the header.
> Of course, that then leads me to think of a relation value
> as a <header, body> tuple. (Let us omit column type
> information for the present discussion.) Then one imagines
> an updatable relation variable in a database as holding
> a value of this tuple type. BUT then we notice that we
> have this restriction that the header must not be updated.
> Why is that?
>
> Certainly in practice this is the sort of thing that would
> be almost universally a good idea. But what theoretical
> basis does it have?
Static typing goes out the window.
- Jan Hidders