0

我已经创建了一个数据库模式,但我不确定它是否真的经过优化。有人可以看看它并帮助我优化它吗?

它有表格Categories,其中包含类似的值"Pizza, Salat, Pasta, Drinks"

Sizes表将包含每个类别的尺寸,比如Pizza可能有尺寸small,large,family,party

并且prices表将包含product_id,size_id,price.

但我不确定是否sizes应该加入products表格或categories像我一样。

4

1 回答 1

0

当然,您的设计可能都完美地反映了您的基础业务领域——您并没有真正提供足够的信息来帮助我们做出任何决定。我鼓励您首先用文字表达架构 - 这通常有助于更好地理解关系。

我认为您的域大致如下:

  • 一个类别有 1 个或多个产品。
  • 一种产品恰好属于一个类别。
  • 一种产品有 1 种或多种尺寸可供选择。
  • 产品的基本价格由其尺寸决定。
  • 一些(但不是全部)产品有配料。
  • 一些(但不是全部)产品可以通过添加额外的配料来定制。
  • 部分定制产品的总价由底价加上附加配料的总和决定。
  • 一些定制产品的总价格由基础价格加上产品尺寸的额外配料的总和确定。
  • 浇头可以添加到一种或多种产品中。
  • 产品可以添加零个或多个浇头。

这有点像您在设计中展示的内容,只是您展示的是产品类别,而不是产品,它决定了可用的尺寸。那可能是对的。回答这个问题的方法是“是否存在并非所有产品都提供相同尺寸的产品类别?” 我认为有——例如,饮料制造商销售各种容器尺寸的饮料。

于 2013-01-18T10:15:01.147 回答