你们能告诉我怎样才能把这个ERD变成第五种正常形态吗?昨天我们做了一个课堂作业,我们让一个真正的客户来向我们解释他的需求,我的小组想出了一个模型,我正试图更进一步,看看我是否能把它变成第5种正常形式,这样我就能更好地理解它,因为下周,我们将做另一组ERD,它必须出现在5nf中。问题是,我不知道从哪里开始,这本书无法通过我的理解。你们能帮帮我吗?Erd模型http://img534.imageshack.us/img534/2118/capturekk.jpg
新信息“假客户需求”
客户有两个部门--“实验室1,实验室2”--向他订购医疗用品,如手套、宠物等。这些部门已经发展壮大,他希望了解库存中有什么,供应商在卖什么,谁有最好的价格,它来自什么成本中心。 他解释说,这个物品被订购的方式是,一个人去向他要补给品,然后他写下这个人是谁的实验室,从这个人的名字,以及什么成本中心付款。但他也希望追踪到日期已经购买了什么,哪些是库存,哪些是必须购买的。他还举了一个例子,一些用户希望某个特定供应商提供的商品可能没有最优惠的价格,他还在邮件中收到了一些目录,其中也包含了他想要跟踪的价格。
如果它乱七八糟的话,我很抱歉,但这都是记忆中的。
发布于 2010-08-05 15:45:48
我要直截了当地说,您当前的模式实际上没有任何资格使用5NF。引用维基百科的一段话,它说大多数4NF表已经符合5NF:
仅在少数情况下使用4NF表不符合5NF。在这种情况下,约束4NF表中属性值的有效组合的复杂现实约束并不隐含在该表的结构中。如果这类表未标准化为5NF,则维护表内数据逻辑一致性的负担必须部分由负责插入、删除和更新该表的应用程序承担;表中的数据可能会变得不一致。相反,5NF设计排除了这种不一致的可能性。
表格
也许这样做的目的不是为了使您的数据库5NF,而是为了了解它的结构相较于5NF,并提出一个论点,为什么它可能已经在5NF。
更新:从评论中读取了某种形式的共识,似乎您的设计已经在5NF中了,不管是出于设计还是出于偶然的原因。
发布于 2010-08-05 16:41:49
免责声明:如果不了解您的业务逻辑,我可能会完全错误地提出以下一些建议。
好的,我在您的数据库模式中看到了一些东西。
https://stackoverflow.com/questions/3415798
复制相似问题