Re: c.d.theory glossary - NULL

From: Laconic2 <laconic2_at_comcast.net>
Date: Wed, 28 Apr 2004 12:12:43 -0400
Message-ID: <n_ednaNiubxcShLd4p2dnA_at_comcast.com>


> There is a fundamental difference, the bit vector is hidden to the
> users and it could be changed by any other physical representation
> without affecting the logical model. That's data independence.
>
> Bit vectors are bit vectors, not nulls

Let's not beat this one to death. If you want to store, together with a row, which columns contain NULL, and which columns contain a valid value, a bit vector is a great way to do it.

It could be substituted for any other equally invisible implementation, as you say. The bits still signify NULLS, in their own context.

The Oracle implementation suffers from a defect. It's not completely invisible.

as in:

UPDATE ADDRESSES SET CITY = ''; SELECT * FROM ADDRESSES WHERE CITY IS NOT NULL; 0 rows selected.

That's a problem. And if you'll check Oracle documentation, you'll see where they warn programmers that this might change in some future. FAIK, it's already happened in the latest version of Oracle. Received on Wed Apr 28 2004 - 18:12:43 CEST

Original text of this message