我正在看一些重要的论坛,如SMF论坛,PhpBB或VBulleting的,我意识到他们不在第三FN。为什么论坛数据库不在第三NF?
他们有很多NULL fiels,例如,在SMF论坛成员行可以有这一切栏为NULL:
pm_ignore_list, messageLabels, personalText, websiteTitle, websiteUrl, location, ICQ, AIM,
YIM, MSN, timeFormat, userTitle, notifyAnnouncements, secretQuestion, secretAnswer, validation_code, additionalGroups, smileySet
所以......可以说,18个字段可以是在表的任何行中都为NULL。 这不是第三个NF ...
他们为什么这么做?我相信他们对BD非常了解...... 谢谢。
为什么他们需要在这些空白字段中插入某些内容? – Hajo 2012-04-19 16:05:53
3NF在非关键字段中不需要空值?根据比尔肯特:“[每一个]非钥匙[属性]必须提供一个事实关于钥匙,整个钥匙,除了钥匙。” null在这里。 – 2012-04-19 16:10:40
@JonathanM:1NF不需要空值,这取决于您接受的1NF的定义。 – 2012-04-19 16:14:02