Options for eliminating NULLable columns from a DB model (in order to avoid SQL's three-valued logic)?
问题 Some while ago, I've been reading through the book SQL and Relational Theory by C. J. Date. The author is well-known for criticising SQL's three-valued logic (3VL). 1) The author makes some strong points about why 3VL should be avoided in SQL, however he doesn't outline how a database model would look like if nullable columns weren't allowed . I've thought on this for a bit and have come up with the following solutions. If I missed other design options, I would like to hear about them! 1)