我应该在我的电子商务应用程序中使用购物车表,还是只拥有未结订单状态?

问题描述 投票:0回答:1

我正在开发一个电子商务应用程序,并且在设计数据库模式时,我偶然发现了两个有关存储购物车数据的问题。

首先,有什么理由要同时拥有购物车和cart_line表?我明白为什么要用订单之类的东西来做到这一点。显然,它可以通过将数据代入单个orderID外键来防止跨多个订单行(订单号,订单日期,用户/帐户,状态等)的重复数据。

但是,这样的唯一可以在购物车行之间共享的数据(我预见)将是用户。因此,为什么不只存储用户ID并完全消除购物车表,而不是在购物车行中存储对cartID的引用?

我是否忘了拥有专用购物车桌的另一个好处?

然后,思考这个问题使我想知道我是否还需要推车线表。如果订单具有状态,为什么不只是具有“未结”状态并将未结订单用于用户购物车?

我意识到这意味着要搜索(较大的)order_lines表而不是cart_lines表来检索用户的购物车。我只是想知道实际会有什么不同。并且,如果通常的做法是使用orders表存储购物车数据。

任何反馈或讨论将不胜感激。 :)

我正在开发一个电子商务应用程序,并且在设计数据库架构时,我偶然发现了有关存储购物车数据的两个问题。首先,是否有任何理由要同时拥有购物车和cart_line表? ...

database-design schema e-commerce cart shopping-cart
1个回答
0
投票

这样做的常见原因是允许一个用户拥有“多个推车”。有时,用户确实需要“停放”未完成的订单并下一个订单,然后再返回未完成的订单以完成或丢弃该订单。

© www.soinside.com 2019 - 2024. All rights reserved.