Re: So what's null then if it's not nothing?

From: Hugo Kornelis <hugo_at_pe_NO_rFact.in_SPAM_fo>
Date: Tue, 22 Nov 2005 00:34:46 +0100
Message-ID: <71m4o1dksa9jpjje98lc953jcb6mqnec8i_at_4ax.com>


On 20 Nov 2005 19:58:44 -0800, michael_at_preece.net wrote:

>
>Julian M wrote:
>
(snip)
>
>> NULL in SQL can seem tricky, but it is simple enough if viewed in terms
>> of what is intended by the ANSI SQL92/99 standards.
>> See drafts:
>> http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
>> http://www.ncb.ernet.in/education/modules/dbms/SQL99/
>>
>
>Here's your problem...
>
>"A special value that is used to indicate the absence of any data
>value."
>
>That's it right there. It doesn't make sense. The special value has to
>be present doesn't it? So something is present. What is it? Is it an
>indication that whatever it is is absent? Nope. If something is present
>it's present. If it's absent it's absent.
(snip)

Hi Mike,

Pay more attention to what you read before you reply. I'll use caps to emphasize the words you seem to have missed:

"A SPECIAL value that is used to indicate the absence of any DATA value."

So if there is no DATA value, we insert a SPECIAL value. Yes, there is a value now. No, it's not a DATA value - it's a SPECIAL value. And it indicates that there is no DATA value. That's why it's SPECIAL - it's not DATA, you know.

>Absence is the problem word. If I want something to be
>absent I'll delete it from the database.

You might want to do a bit more reading on relational databases. This might come as a surprise to you, but SQL <> Pick. You can't delete a column or a single value from a table in a relational database. You can only delete a complete row. If several independent data elements are combined into one row, then you can't delete the whole row if you want to remove just one of the data elements.

Best, Hugo

-- 

(Remove _NO_ and _SPAM_ to get my e-mail address)
Received on Tue Nov 22 2005 - 00:34:46 CET

Original text of this message