>>Example, Vendor record with an FK to an Address table. If we don't know the address for the vendor, we may have NULL in the FK field.
>
>I really hate NULLs and if SQL Server have EMPTY() datetimes I wouldn't have any NULLable fields in Database. In the cases you point I will have an record the will be "I don't know" or something in the table with a valid key.
Then you would have to add some logic to process such an entry.
In fact in my older job we used the concept of a < Blank Record > for other purpose as well.
If it's not broken, fix it until it is.
My Blog