首页 新闻 会员 周边 捐助

关于购物车的数据表设计问题

0
悬赏园豆:50 [已解决问题] 解决于 2010-11-22 15:15

描述下我的问题:

购物车表中存有产品编号,产品单价等等字段,因为产品的特殊性价格会经常变动,

由于用户加入购物车的数据是直接添加到数据库表中的,这样就会因为价格的调整造成购物车中的价格与产品实际价格的不同步.

一般购物车的表会有价格这个字段吗?

如果是,产品价格经常变动的话如何处理,修改产品价格的时候同时更新购物车?

如果不是动态读取的话这样不是会造成性能问题?这样合理吗?

三桂的主页 三桂 | 老鸟四级 | 园豆:3565
提问于:2010-11-17 11:43
< >
分享
最佳答案
0

“我想在购物车中不需要存储商品的其他易变动信息”,不支持此观点,因为一个购物车你必须要存贮商品价格,而价格又是极易发生变化的属性。

所以,在客户端显示并存贮的时候一定是要存贮的,至于当它发生变化时,价格应该如何更新?

程序可以考虑当用户点击购物车而当中又存在商品时,向服务器传回一个参数数组(商品ID),重新返回要从服务器获取的数据,并更新显示到用户购物车。

 

收获园豆:40
Tester Chen | 小虾三级 |园豆:1690 | 2010-11-17 13:08
理解你的意思,我说的价格不是因为改变了产品的数量而导致购物车里面的价格变化而是网站上商品本身的价格变化导致购物车对应价格没有同步过来...
三桂 | 园豆:3565 (老鸟四级) | 2010-11-17 15:05
我说的“重新返回要从服务器获取的数据”,返回的是我们要的数据,其中就有你想要的价格。 而不是你理解的数量,数量改变了,按道理是要重新检索数据库,更新价格的。假设,价格是不变的,那么在修改数量的时候,是不用对数据库作任何操作的,只需要在本地有一个更改就OK 相信你也知道购物车里面是有“单价、数量和单种别总价”的。
Tester Chen | 园豆:1690 (小虾三级) | 2010-11-17 15:11
谢谢回复,已经明白你的意思,已经改成动态读取价格,这样省事多了...
三桂 | 园豆:3565 (老鸟四级) | 2010-11-22 15:14
其他回答(1)
0

我想在购物车中不需要存储商品的其他易变动信息

存储的信息在变动后,那么存储在购物车表中的信息就是浪费的

存储ID就可以了

 

那样的设计会有一个bug

你可以参见对petshop的一个bug分析文章

在这里

http://kb.cnblogs.com/a/668114/

收获园豆:10
Parry | 园豆:583 (小虾三级) | 2010-11-17 11:51
谢谢解答,购物车没有模仿petshop来做,目前购物流程已经成型了,最近要上一批商品,价格每天都在波动的,为了防止发生我提问中的问题得做出一些修改,看是根据商品编号动态读取价格还是更新价格的时候同时更新购物车价格达到同步哪种方式更为快捷...
支持(0) 反对(0) 三桂 | 园豆:3565 (老鸟四级) | 2010-11-17 14:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册