我工作的購物車程序,而我就如何按照下列規定項目和期權定價模型幾乎難倒了:建模項目和選項的購物車
- 每個項目可能有零或更多選項(顏色,尺寸等)
- 每個選項可能有多個不同的值(例如綠色,藍色,紅色和橙色)
- 具有相同選項的兩個項目可能具有該選項的不同值您可以訂購綠色或橙色的T恤,並且您可以訂購藍色或紅色的球帽)
我敢肯定,這是一個有點常見的情況,但它不是我曾經遇到過的。有任何想法嗎?
我工作的購物車程序,而我就如何按照下列規定項目和期權定價模型幾乎難倒了:建模項目和選項的購物車
我敢肯定,這是一個有點常見的情況,但它不是我曾經遇到過的。有任何想法嗎?
item
表(包含項目)
item_id
name
options
表(包含所有選項)
option_id
name
type -- color, front_color, back_color, size, shoe_size etc.
option_value
表(存儲每個選項所有可用的值)
option_value_id
option_id
value
item_available_option
(存儲所有可用的每個項目的選項)
item_id
option_id
item_available_option_value
item_id
option_id -- not required, but I added since it's easier to figure it out
option_value_id
(存儲所有可用的選項每人選項項值)表(存儲的訂單)
order_id
customer_id
order_date
billing_address
delivery_address
order_position
表(包含訂單位置)
order_pos_id
order_id
item_id
quantity
order_pos_option
表(包含每個順序位置的選項)
order_pos_id
option_id
option_value_id
這是一個非常通用的方法,它允許在每個項目的基礎上定義的未定義數量的選項和選項值。
如果沒有其他的選擇,另一種是去特定的,是這樣的:
colors
表(包含所有顏色)
color_id
name
item_available_colors
(每item_id的可用顏色)
item_id
color_id
sizes
表(包含所有大小)
size_id
name
item_available_sizes
(每ITEM_ID可用尺寸)
item_id
size_id
order_position
表(包含訂單位置)
order_pos_id
order_id
item_id
quantity
color_id
size_id
item
和orders
表保持不變,所有其他都不再需要。
還有很多其他可能的變化,這是爲了給您提供一個起點。
謝謝。我對使用RDBMS非常新,所以我非常感謝**的幫助。 – Andrew
很高興我能幫上忙。我認爲這是你的第一個問題,歡迎登上,也考慮回答他人的問題,分享你的知識。 –