All good points. The ability to store NULL, and the fact that there is just one kind of NULL, seem to parallel what has become common and useful in programming languages. Most support NULL at least for pointers, and many support it for all data types. It doesn't have to have a defined meaning to be useful, any more than the number "2" has to have a defined meaning to be useful. (Don't think NULL is useful for all types? Than look for all of the int functions in a C program that are returning -1 to indicate "not found," "error," etc.) In the marketplace of special values, program language designers-- at least the ones who designed the languages I use--agree that allowing NULL (and just one kind of NULL) for all data types is the winner. That alone makes NULL necessary in the database: Because storing and retrieving data that might include NULL on the program end would be torture if the database itself did not support NULL. There's plenty of nits to pick here, I think. But it's clear to me that practice has proven NULL to be too useful to ditch. Wayne Conrad