【问题标题】:Ecommerce, storing ordered products with product options电子商务,使用产品选项存储订购的产品
【发布时间】:2013-06-06 17:46:42
【问题描述】:

我正在尝试确定在数据库中存储订单的最佳方式。

每个产品都可以配置,并非所有选项都相同。例如:

Product A
Size: small, medium, large
Membership: 1 year, 2 years, 3 years, 5 years

Product B
Size: small, medium

Product C
Design: a, b, c, d
Recipient: jondoe@msn.ca
Amount: 25.99

如您所见,每个订单都可以包含一些非常可变的数据。处理存储此类交易的最佳方式是什么?

【问题讨论】:

  • 如果您担任这个职位,我会考虑众多现有电子商务应用程序之一。
  • 每个开发良好、支持良好、测试良好的电子商务应用程序都是可定制的。
  • 你没有抓住重点。在此期间,我没有使用任何第三方应用程序。
  • 好吧,我的意思是,如果你这么问,你应该是,祝你好运。
  • 真的没有帮助。我正在努力学习......因此问题。如果我知道答案,我为什么要首先发布问题?

标签: php mysql database database-design e-commerce


【解决方案1】:

如果这是你将要拥有的所有桌子,我会这样做

Products
product_id
product_name

Sizes
size_id
size_name

Memberships
membership_id
membership_name

Designs
design_id
design_name

Recipients
recipient_id
recipient_name

Orders
order_id
product_id
size_id
design_id
membership_id
recipient_id
total_amount

根据您的金额的计算方式,您可以在每个表格中添加一个金额作为产品、尺寸等的“金额”,然后在最后的订单部分中从每种类型中提取金额并计算它以更新“ total_amount' 列在最终订单中。如果他们改变 size_id 让它重新计算,等等。

希望这有帮助吗?

【讨论】:

  • 这太具体了。本来,我只是打算有一个order_details 表,其中只包含order_id 和一个用于产品属性的序列化数据列......我只是觉得这太乱了。
  • 使用 1 表比 5 表更混乱。
猜你喜欢
  • 2017-03-08
  • 1970-01-01
  • 2011-10-07
  • 1970-01-01
  • 2011-08-03
  • 1970-01-01
  • 2019-02-22
  • 2011-01-14
  • 2017-12-16
相关资源
最近更新 更多