当前位置: 代码迷 >> Java Web开发 >> 订单发货地址关联设计有关问题~求教
  详细解决方案

订单发货地址关联设计有关问题~求教

热度:882   发布时间:2016-04-16 22:18:08.0
订单发货地址关联设计问题~求教
比如我有一个地址管理模块里面存的是用户常用的地址

如:

用户        电话                                  地址
张三     138222222222             北京XXXX
李四      13833333333              北京XXXXX
....


方法一
比如我购买一件商品,选择张三这个地址。  提交成功后   订单表中有一个字段关联  用户地址ID.

我们会按照这个地址发货,订单地址也会显示此地址。。若用户修改了张三的这个地址信息。。

下次看这个订单详情时,地址也会改变,因为根据用户地址ID关联。。


方法二:

提交订单的时候,把姓名,电话,地址都记录在订单表中。。这样就不关联用户地址表。。

无论用户修改地址也没关系。。但感觉这样设计订单表就多了一些字段。



如何更好的设计呢?

即可以随意的修改地址管理,也不会影响到订单详情看到的地址信息。
------解决方案--------------------
分订单表和地址表,订单表中保存一个地址ID字段,对应地址表中的地址ID字段,然后通过关联查询获取地址表中的信息
------解决方案--------------------
1. 还是要方案1这样做,必须要维护一张收货地址表,让用户提交订单的时候可以选择
2.订单表不需要跟地址表关联,当生成订单的时间,将用户的收货地址所有信息,生成为一个字符串保存至订单 表一个字段中去,因为这个地址主要是查看订单详情里面使用,不会做改动,这样如果用户在订单完成后修改了地址,查看订单详情也不会改为新的。  淘宝应该就是这样实现的,可以去看看
------解决方案--------------------
用户  many to many  地址  :建立第三方关联表

用户  one to many   订单  : 用户在订单表是外键

地址  one to one  订单  : 用户在订单表是引用地址id


最好先搞清楚物理数据模型的关系再做表,powerdesigner..
------解决方案--------------------
我的设计是订单价一个字段,直接保存着一段话,就是你的送货地址的详细情况,如果发现后面不一致,说明他改过了,只能这样,要不就是在生成一张表,叫做送货记录,直接把当时送货数据全部一模一样的复制一条道送货记录 里边跟订单关联起来
  相关解决方案