Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memodelkan Varian Produk dengan Cekap dalam Reka Bentuk Pangkalan Data?

Bagaimana untuk Memodelkan Varian Produk dengan Cekap dalam Reka Bentuk Pangkalan Data?

DDD
DDDasal
2024-12-30 19:47:15732semak imbas

How to Efficiently Model Product Variants in a Database Design?

Memodelkan Varian Produk

Dalam reka bentuk pangkalan data, produk boleh mempunyai variasi seperti saiz, warna, dsb. Untuk mengurus varian produk tersebut dengan cekap , pertimbangkan untuk menggunakan pendekatan berikut:

Reka bentuk:

--------------- ---------------
| PRODUK |-----< VARIAN_PRODUK |
-------------- --------------
| #product_id | | #product_id |
| nama_produk | | #variant_id |
--------------- | sku_id |

--------^-------- --------^--------
| PRODUCT_OPTIONS |-----< VARIANT_VALUES |
----------------- -----------------
| #product_id | | #product_id |
| #option_id | | #variant_id |
--------v-------- | #option_id |

----------------- --------v--------
| PILIHAN | |
--------------- |
| #option_id | |
| nama_pilihan | |
--------------- |

-------^------- |
| PILIHAN_NILAI |----------------
---------------
| #option_id |
| #value_id |
| value_name |
---------------

Kunci Utama, Kunci Unik dan Kunci Asing:

  • PRODUK

    • PK: product_id
    • UK: nama_produk
  • PILIHAN

    • PK: option_id
    • UK: option_name
  • OPTION_VALUES

    • PK: option_id, value_id
    • UK: option_id, value_name
    • FK: option_id RUJUKAN PILIHAN (option_id)
  • PRODUCT_OPTIONS

    • PK: product_id, option_id
    • FK: product_id RUJUKAN PRODUK (product_id)
    • FK: option_id RUJUKAN PILIHAN (option_id)
  • PRODUCT_VARIANTS

    • PK: product_id, variant_id
    • UK: sku_id
    • FK: product_id RUJUKAN PRODUK (product_id)
  • VARIANT_VALUES

    • PK: product_id, variant_id, option_id
    • FK: product_id, variant_id RUJUKAN (product_id , variant_id)
    • FK: product_id, option_id RUJUKAN PRODUCT_OPTIONS (product_id, option_id)
    • FK: option_id, value_id RUJUKAN OPTION_VALUES (option_id, value_Id)

Contoh Data:

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

Pertimbangan Reka Bentuk:

  • Reka bentuk ini membolehkan penambahan produk dan varian baharu secara dinamik.
  • Setiap varian diwakili oleh SKU yang unik .
  • Nilai SKU adalah unik pada semua varian.
  • Reka bentuk memastikan setiap kombinasi varian produk dikaitkan dengan SKU yang unik serta set pilihan dan nilai.
  • Pilihan varian boleh ditambah atau dialih keluar tanpa menjejaskan varian sedia ada.

Contoh Kes Penggunaan:

Pertimbangkan produk Baju yang boleh mempunyai saiz dan warna yang berbeza. Menggunakan reka bentuk ini, anda boleh mencipta Baju produk, varian Saiz dengan nilai Kecil dan Sederhana, dan varian Warna dengan nilai Merah dan Biru. Setiap gabungan saiz dan warna akan mempunyai SKU yang unik, seperti Merah Kecil atau Biru Sederhana.

Atas ialah kandungan terperinci Bagaimana untuk Memodelkan Varian Produk dengan Cekap dalam Reka Bentuk Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn