繁体   English   中英

对包含两列的简单表进行归一化 (3NF)

[英]Normalization (3NF) on a simple table of two columns

我有一个只有两个属性(DeliveryPerson 和 DeliveryTime)的表。 每个人都可以在特定的交付时间交付“产品”。 正如您在下面看到的,John 例如在不同的交货时间交付了三种产品。

在此处输入图像描述

根据我的任务,我必须把这张表放在 3NF 中,但我很困惑,因为我无法将“deliveryPerson”设置为主键,因为该列中有重复的值。 有没有办法设置这个表来满足 3NF? 如果这是不可能的,那么在没有主键的数据库中拥有这样的表是否正确?

非常感谢!

规范化不是将主键添加到您已经确定列的表中,而是首先确定您需要哪些表和列。 无法在此表上定义主键是您被要求解决的问题; 该解决方案将涉及创建新表。

与其查看表格,不如查看您尝试 model 的数据:

  • 有四个(可能是任意数量)送货员
  • 每个送货员可以有一个或多个(甚至可能为零)送货时间

规范化的数据库将分别表示其中的每一个。 我会把细节留给你去解决,而不是给你完整的答案。

有很多可用的教程可能会比我更好地解释它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM