首頁 >資料庫 >mysql教程 >如何在資料庫設計中有效地對產品變體進行建模?

如何在資料庫設計中有效地對產品變體進行建模?

DDD
DDD原創
2024-12-30 19:47:15745瀏覽

How to Efficiently Model Product Variants in a Database Design?

建模產品變體

在資料庫設計中,產品可以有尺寸、顏色等變體。要有效管理此類產品變體,請考慮使用以下方法:

設計:

-------------- - ------------ --
|產品展示|----- --------------- -- -------------
| #產品ID | | #product_id |
| 產品名稱| | #variant_id |
-------------- | sku_id |

    |             +---------------+
    |                       |

--------^------- - --------^--------
|產品選項|----- -------------- --- -----------------
| #產品ID | | #product_id |
| #選項id | | #variant_id |
--------v-------- | #option_id |

    |              |  value_id       |

---------------- - --------v--------
|選項| |
--------------- |
| #選項id | |
| 選項名稱| |
--------------- |

    |                       |

-------^--- ----- |
| OPTION_VALUES |---------------
---------------
| #option_id |
| #value_id |
| value_name |
---------------

主鍵、唯一鍵與外鍵:

  • 產品

    • PK:product_id
    • 英國:產品名稱
  • 選項

    • 選項
    • 選項
    PK:option_id
  • 英國: option_name

    • OPTION_VALUES
    • PK: option_id, 值option_id參考選項(option_id)
  • 產品選項

    • PK:product_id,option_id
    • FctK:pro did
    • FK: option_id參考選項(option_id)
  • 產品變數

      PK:product_id、variant_id
    • PK:product_id、variant_id
    • FK:product_id 參考產品(product_id)
  • VARIANT_VALUES

    • PK:product_id、variant_id、option_id
  • FK:product_id、option_id 參考 PRODUCT_OPTIONS(product_id、option_id)
  • FK:option_id、value_id 參考 OPTION_VALUES(option_id、VALUES(option_id、VALUES(option_id、VALUES(option_id、VALUES)參考value_Id)

範例資料:

PRODUCTS PRODUCT_VARIANTS PRODUCT_OPTIONS OPTIONS OPTION_VALUES VARIANT_VALUES
1, Shirt 1, Size 1, Shirt, Size 1, Size 1, Small 1, Small
1, Shirt 2, Color 1, Shirt, Color 2, Color 1, White 2, White
2, Trousers 3, Size 2, Trousers, Size 1, Size 2, Medium 3, Medium
3, Trousers 4, Color 2, Trousers, Color 2, Color 1, White 4, White

設計注意事項:

  • 此設計允許動態新增產品和變體。
  • 每個變體都由唯一的 SKU 表示.
  • SKU 值在所有變體中都是唯一的。
  • 設計確保每個產品變體組合都與一個唯一的 SKU 以及一組選項和值相關聯。
  • 可以新增或刪除變體選項,而不會影響現有變體。

範例用例:

考慮可以有不同尺寸和顏色的襯衫產品。使用此設計,您可以創建產品襯衫、具有小和中值的變體尺寸以及具有紅色和藍色值的變體顏色。每種尺寸和顏色的組合都會有一個獨特的 SKU,例如小號紅色或中號藍色。

以上是如何在資料庫設計中有效地對產品變體進行建模?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn