我需要在我的数据库中使用以下结构的帮助。
这些是桌子
现在我需要把这件事组织起来,让我们从最后一篇表格文章开始。
项目属于产品,然后产品属于产品组,然后产品组属于OptionalGroup,OptionalGroup属于PriceList。
今天的关系是这样的。
样本数据:
> Pricelist: 81
> OptionalGroup: Shoes
> ProductGroup: Shoelace
> Product: Shoelace 1
> Product: Shoelace 2我该怎么设计这个?
以这种方式,我需要得到一个产品,现在我需要价格表,选择组,产品组,然后我可以得到产品。因为价格表有他们自己的OptionalGroup,而且它也可以有相同的选项组名称。
发布于 2012-12-20 15:21:12
我该怎么设计这个?
)您的数据模型似乎适合您所描述的需求。
有一些可能的变化,但没有从根本上改变基本的想法。例如..。

...uses identifying关系用于将父PKs“迁移”到子表,因此您可以(例如)直接从Product表中获取PriceListId,而无需使用JOINing和OptionalGroup表,但代价是“胖”子FKs。
非识别关系的设计是否比这里所示的设计更好,这是一个工程权衡的问题。两者都有优点和缺点,你的任务是为你的特定情况挑选一个有更多好处和更少缺点的人。
另外,如果在(other fields)表中没有PriceList,而且您永远不能有一个空价目表(或者根本不区分空价目表和不存在的价目表),您可以完全省略该表。
发布于 2012-12-20 12:10:14
这个设计就行了
table name PriceList
ProductID--> PK
Price
table name OptionalGroup
GroupID--> PK
ProductID--> FK
GroupName
table name ProductGroup
ProductGroupID--> PK
ProductGroupName
GroupID--> FK
table name Product
ProductName
ProductGroupID-->FKhttps://stackoverflow.com/questions/13971628
复制相似问题