0

这些是我的要求:

  1. 每个类别有多个组
  2. 每个组有多个属性
  3. 每个属性都有多个值

到目前为止,我已经想出了这个数据库设计

类别组表

GroupID| CatID[References Category(CatID)]|GroupName

类别属性表

AttributeID| AttributeName| GroupID[References CategoryGroups(GroupID)]| AttributeValue

所以你们觉得这是一个巧妙的设计吗?有什么建议么??

4

2 回答 2

1

除了命名您的第二个表之外GroupAttributes,因为它对类别一无所知,这是一种最常用的好方法。您有多个 1:N(一对多)关系,并且您以正确的方式引用表。

于 2012-09-28T06:47:34.307 回答
0

有什么理由不为您的四个概念设置四个表吗?:

Category: id, <category stuff>
Group: id, category_id, <group stuff>
Attribute: id, group_id, <attribute stuff>
Value: id, attribute_id, <value stuff>

主键是 id 列。

外键如命名(即attribute_id 是Attribute.id 的外键)

于 2012-10-01T10:07:43.723 回答