Re: NULLs: theoretical problems?
Date: Sat, 11 Aug 2007 20:50:30 +0100
On 2007-08-11, -CELKO- <jcelko212_at_earthlink.net> wrote:
>>> The ANSI standard defines NULL as follows:
> "null value: A special value that is used to indicate the
> absence of any data value." <<
> We needed to word it that for reasons of implementation.
Proving that you did not know the difference between logical and physical. Of course a NULL needs to be implemented, but it is _not_ a value. Any possible implementation (and there are lots) will have to be some sort of special case, but the language does not need to know.
> In Codd's model there is only one NULL, a type-less marker.
> But hardware has to allocate storage and therefore we had to allow
> for "CAST (NULL AS <data type>)" to signal the SQL compiler about
> that column's storage.
What on earth does that mean?
> There are some situations where the compiler cannot determine the data
> type of a CASE expression without explicit CAST() help.
I dont't know that I actually believe that.
> Does anyone seriously gripe about floating point numbers having gaps
> in them because of implementation considerations? No, we just pick on
> poor little NULL ...
But then floating-point numbers are values that are difficult to represent, whereas NULL is _not_ a value, but is easy to represent. The arguments are about what it means and whether we really need it.
-- Beware of Hammer Syndrome!Received on Sat Aug 11 2007 - 21:50:30 CEST