关于衣服的数据库架构设计

时间:2010-02-02 00:57:00

标签: database-design

我正在研究时装店的库存控制,但坚持服装模特。

应该有一个Style类,

public class Style{
   String styleNumber;
   String[] colors;
   String[] sizes;
   int quantity;

}

还有一个细节服装:

public class Garment{
       Style style;
       String color;
       String size;
       int quantity;

    }

例如,一种风格有两种颜色,每种颜色可能有四种颜色,因此,服装可能有2 * 4。我们需要查询特定颜色或大小的库存。

你们可以给我一些关于数据库架构设计的提示吗? 谢谢。

2 个答案:

答案 0 :(得分:1)

这是你需要的,我怀疑。

TABLE: Colour

ID    Colour
1     Green
2     Red

TABLE: Size

ID    Size
1     Small
2     Medium

TABLE: Garment
ID    ID_COLOUR  ID_SIZE  INVENTORY
1     1          1        3
1     1          2        1

使用这种方法,您可以选择是否保留库存为0的行。

这种方法的问题在于,您不需要创建kdistinct样式,只需在GARMENT表中创建它们即可创建它们。

如果您确实想要跟踪样式,请使用:

TABLE: Colour

ID    Colour
1     Green
2     Red

TABLE: Size

ID    Size
1     Small
2     Medium

TABLE: Style
ID   ID_COLOUR ID_SIZE
1    1         1
2    1         2

TABLE: Garment
ID   ID_STYLE  INVENTORY
1    1         10
2    2         3

真正的设计决策取决于实际需求。当您确定此数据库的要求时,那将指导您采用正确的方法。

答案 1 :(得分:0)

以下是一些建议:

  1. 确保Style.styleNumber具有唯一索引
  2. 确保Garment.style具有正确的联接/搜索索引
  3. 考虑给Garment提供自己唯一的ID(auto_increment)
  4. 考虑在colorssizes
  5. 中设置GarmentStyle枚举类型或与外键有关系的单独表格