see Hugh Darwen's paper on www.thethirdmanifesto.com about how to represent missing information without using nulls; this is a direct link to the paper: http://web.onetel.com/~hughdarwen/TheThirdManifesto/Missing-info-without-nulls.p df his proposal is based on horizontal and vertical decomposition techniques. as usual, it all starts with some decent data modeling :-) kind regards, Lex. ------------------------------------------------------------------ Steve Adams Seminar http://www.naturaljoin.nl/events/seminars.html ------------------------------------------------------------------ -----Original Message----- How would you get rid of NULL columns? a) You could write an application where each table consisted of the primary key and only one attribute column. Then you would use left outer joins to determine whether a value exists or not. If you didn't have anything to put as the value for an attribute, you simply wouldn't insert the row into the attribute's table. b) Another way of doing it, and the way it's done in databases that don't support NULL (or where the developer doesn't know what NULL is and how to use it) is for each attribute to come up with a value that would stand for UNKNOWN. It's easy to do with strings ('UNKNOWN'), fairly easy with dates (1500-01-01 for timestamp field and 9999-01-01 for date-of-birth field) and harder still with numbers (999999999 for UNKNOWN number of livestock on a farm is reasonable, but 999999999 for UNKNOWN amount in a bank account is probably not).
BEGIN:VCARD VERSION:2.1 N:de Haan;Lex FN:Lex de Haan ORG:Natural Join B.V. TEL;WORK;VOICE:+31.30.2515022 TEL;HOME;VOICE:+31.30.2518795 TEL;CELL;VOICE:+31.62.2955714 TEL;WORK;FAX:+31.30.2523366 ADR;WORK:;;Pieter Breughelstraat 10;Utrecht;;3583 SK;Netherlands LABEL;WORK;ENCODING=QUOTED-PRINTABLE:Pieter Breughelstraat 10=0D=0AUtrecht 3583 SK=0D=0ANetherlands URL;WORK:http://www.naturaljoin.nl EMAIL;PREF;INTERNET:lex.de.haan@xxxxxxxxxxxxxx REV:20040224T160439Z END:VCARD