Re: RM and definition of relations/tuples
Date: 24 Nov 2005 11:18:18 -0800
Message-ID: <1132859897.977772.69710_at_g47g2000cwa.googlegroups.com>
Martin Zapf wrote:
> I have a question to the Relational Model and the definition of
> relations and tuples.
>
>
> I learned the following definitions:
>
> A relation schema R is a set of Attributes R={A_1,A_2,...,A_n}
> Each Attribute A has a domain dom(A)
>
> Here comes the problem, there are two definitions for relations/tuples
>
> 1. defintion:
>
> A relation r for schema R is a mathematical relation (cartesian
> product) over the
> domains from the attributes of R.
> So r:=dom(A_1)xdom(A_2)x...xdom(A_n)
> A tuple is an element of r.
>
> 2. definition
>
> A relation r for schem R is a set of tuples.
> A tuple t is a function
> t: R -> Union (dom(A_1),dom(A_2),...,dom(A_1))
> t maps each Attribute of R to an value of its domain.
> So a relation is a set of functions, which are called tuples.
>
>
> I noticed, that the difference between this two definition is that
> definition 1 forces a certain order for the Attributes and the values
> for them in the tuples.
> The 2. definition doesnt need any order for the attributes.
>
>
> Im quite confussed, is there a "better" definition or should you always
> use both?
The first definition is closer to the "mathematical" relation where a tuple is an *ordered* sequence. The second definition is what database folks prefer to use (see Codd, Date, et al) where a tuple is a *set* of attribbute:value pairs. One can be mapped to the other and I would not worry too much about the difference unless you are doing some d.b. theoretical research. Received on Thu Nov 24 2005 - 20:18:18 CET