Database 可空外键会违反什么标准形式?

Database 可空外键会违反什么标准形式?,database,database-design,normalization,Database,Database Design,Normalization,一位同事向我解释说,在数据库设计中,可空外键被认为是不好的做法,因为它违反了早期的一种范式。虽然我在学校上了一堂数据库基础课,但我不认为正规形式是讨论的主题。Wikipedia和其他讨论这个话题的网站使用学术术语,但我想更好地理解规范形式的这一方面,而不必上一整节课 我认识到:这个问题并不是就此问题展开辩论。相反,我想具体了解它们与正规形式的关系。哪些范式被可为空的外键所违反,以及为什么?我想在您链接的Q/A中回答了这个问题 Date在《数据库系统导论》的第七版中写到了这一点 第一个范式:一个r

一位同事向我解释说,在数据库设计中,可空外键被认为是不好的做法,因为它违反了早期的一种范式。虽然我在学校上了一堂数据库基础课,但我不认为正规形式是讨论的主题。Wikipedia和其他讨论这个话题的网站使用学术术语,但我想更好地理解规范形式的这一方面,而不必上一整节课

我认识到:这个问题并不是就此问题展开辩论。相反,我想具体了解它们与正规形式的关系。哪些范式被可为空的外键所违反,以及为什么?

我想在您链接的Q/A中回答了这个问题

Date在《数据库系统导论》的第七版中写到了这一点

第一个范式:一个relvar在1NF中当且仅当 该relvar的值,每个元组只包含一个值 属性(第357页)

而且

关于空值的全部要点恰恰是它们不是空值 值——重复,它们是标记或标志。(第584页)

因此Date认为,允许任何列中为null的relvar不在1NF中


他的章节“信息缺失”中有很多关于这个主题的内容。

谢谢您的解释。