为购物卡

时间:2016-01-04 10:54:45

标签: mysql database database-design

我第一次设计数据库表我真的需要一个帮助来设计好的数据库表。

我对设计产品属性表感到困惑,但我确实请检查该设计并帮助我改进数据库结构。

  

product_categories

    category_id
    parent_category_id
    category_title
    category_slug
    category_description
    category_image
    include_in_menu
    display_mode
    display_mode_content
    category_status
  

属性

    attribute_id
    category_id
    attribute_title
    attribute_slug
    attribute_type
    attribute_table
    attribute_inputtype
    attribute_label
    is_required
    is_unique
    attribute_default_value
  

attribute_order

    order_id
    attribute_id
    sort_order
  

ATTRIBUTE_VALUE

    attribute_value_id
    attribute_id
    value
  

产品

    product_id
    product_categories_id
    product_sku
    product_title
    product_slug
    product_description
    product_short_description
    product_brand_id
    product_warranty
    product_images
    product_price
    product_selling_price
    product_qty
    product_height
    product_weight
    product_length
    product_status
  

product_attribute

    attribute_id
    product_id
    attribute_value

如果我需要更改我的表格或字段名称,请同时提出建议。如果我在数据库设计中犯了任何错误,请纠正我。

非常感谢你。

1 个答案:

答案 0 :(得分:1)

您将有很多表,例如:

Products:
    ID
    Name
    Description
    Etc...

Categories:
    ID
    Name

ProductCategories:
    ProductID
    CategoryID

Types:
    ID
    Name

ProductTypes:
    ProductID
    TypeID

您将有很多表,例如:

产品:     ID     名称     描述     等等...

类别:     ID     名称

产品类别:     产品编号     类别ID

类型:     ID     名称

产品类型:     产品编号     TypeID

这使您可以拥有多个类别和多个类型的产品...

根据以下评论添加了更多示例。对于尺寸,您有一个尺寸表,以及一个将产品映射到尺寸的映射表...

Sizes:
    ID
    Name

ProductSizes:
    ProductID
    SizeID

如果您还需要考虑颜色,并且需要选择要存储的颜色是带有颜色的大小,还是存储的颜色是带有大小的颜色...

Colours:
    ID
    Name

ProductColours
    ProductID
    ColourID

或者,如果您需要颜色和尺寸,或任何其他复杂性,我会直接将其抽象出来,并使用ProductAttributes方式进行处理,也许超出了这个问题的范围,因为答案的确很长。 / p>

但是与上面的样式相同,您可以有一个像这样的表:

ProductSizesColours:
    ProductID
    SizeID
    ColourID