我很困惑我是否应该合并两张桌子或将它们分开。 ff只是我的一个问题:
tblPhone(Phone_ID, Phone_Number, Phone_Type_ID, Person_ID)
tblPhone(Phone_Type_ID, Phone_Type_Name)
或
我应该简单地说:
tblPhone(Phone_ID, Phone_Number, Phone_Type_Name, Person_ID)
是否有优势?是否有类似标准指南或练习来创建表格?例如,我记得有人告诉我,如果一张桌子不是3或更多,只需将它合并到另一张桌子上,就像这样......这是真的吗?我记得一些规范化规则......但有时它可能会非常混乱。我认为这属于第三个规范化规则,这就是为什么它们应该分开,我错了吗?谢谢!
答案 0 :(得分:1)
这是正确的,这说明了第三种正常形式。
您正在将Phone_Type_Name
标准化为tblPhone
(我们假设您的意思是调用第二个tblPhoneType
)。这是正确的,也是一种常见做法。即使您现在只有tblPhoneType
中的两列,最终您可能需要将其展开以包含与手机类型相关的其他属性,这是说明为什么要对其进行规范化的最简单方法。
现在通过规范化,你可以保护自己免受这种情况的影响:
tblPhone(Phone_Type_ID, Phone_Type_Name, Phone_Type_Min_Price, Phone_Type_Max_Price)