Re: MV Keys

From: Bob Hairgrove <invalid_at_bigfoot.com>
Date: Wed, 01 Mar 2006 09:15:34 +0100
Message-ID: <3bla025sc4m8u59a7qoc09bipjtnh5tmuk_at_4ax.com>


On 28 Feb 2006 18:42:22 -0800, "Marshall Spight" [Quoted] <marshall.spight_at_gmail.com> wrote:

>Jon Heggland wrote:
>
>> What definition of 1NF do you use? I'm asking in earnest; there are
>> quite a few different definitions floating around.
>
>I guess I use the definition that says 1NF means no
>attributes of compound types. No list or set typed

>attributes, that is. (Only conventionally we have to
>pretend that varchar is not a compound type if we
>want to use this definition, because, practically
>speaking, you can't live without strings.)

I don't agree with this. Strings are (IMHO) scalar types because they can be sorted. However, mathematical operations on them, except for comparison operators, are not possible. But there are other operations, such as concatenation and substring, which are.

Also, the characters by themselves are meaningless much as the bits in a number by themselves are meaningless. It is the order of the bits, and the order of the characters, that give the number or string any meaning. Therefore, if you consider VARCHAR to be a compound type, you would have to say that DECIMAL is, too. And with real compound types such as lists or arrays, it is the elements themselves, and not the collection of elements, which gives the type semantic meaning.

But I'm not a mathematician, so I couldn't say what it takes to prove whether something is a scalar type or not. Is there a formal definition?

--
Bob Hairgrove
NoSpamPlease_at_Home.com
Received on Wed Mar 01 2006 - 09:15:34 CET

Original text of this message