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

JunEric 2014-06-08 08:30:36
比如我有一个地址管理模块里面存的是用户常用的地址

如:

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


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

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

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


方法二:

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

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



如何更好的设计呢?

即可以随意的修改地址管理,也不会影响到订单详情看到的地址信息。
...全文
755 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
JunEric 2014-06-12
  • 打赏
  • 举报
回复
引用 7 楼 secondfirstlife 的回复:
我的设计是订单价一个字段,直接保存着一段话,就是你的送货地址的详细情况,如果发现后面不一致,说明他改过了,只能这样,要不就是在生成一张表,叫做送货记录,直接把当时送货数据全部一模一样的复制一条道送货记录 里边跟订单关联起来
我们的解决办法是,订单表还是关联地址ID 在地址表中加入一个字段,status用于是否有效。。如果用户修改地址信息就把当前地址设置为无效,并新增操作。。 这样就不会因为用户修改了信息导致订单改变
JunEric 2014-06-12
  • 打赏
  • 举报
回复
引用 5 楼 cowfishy 的回复:
用户 many to many 地址 :建立第三方关联表 用户 one to many 订单 : 用户在订单表是外键 地址 one to one 订单 : 用户在订单表是引用地址id 最好先搞清楚物理数据模型的关系再做表,powerdesigner..
我们的解决办法是,订单表还是关联地址ID 在地址表中加入一个字段,status用于是否有效。。如果用户修改地址信息就把当前地址设置为无效,并新增操作。。 这样就不会因为用户修改了信息导致订单改变
secondfirstlife 2014-06-09
  • 打赏
  • 举报
回复
我的设计是订单价一个字段,直接保存着一段话,就是你的送货地址的详细情况,如果发现后面不一致,说明他改过了,只能这样,要不就是在生成一张表,叫做送货记录,直接把当时送货数据全部一模一样的复制一条道送货记录 里边跟订单关联起来
balabala_sean 2014-06-09
  • 打赏
  • 举报
回复
引用 3 楼 cbxjj 的回复:
1. 还是要方案1这样做,必须要维护一张收货地址表,让用户提交订单的时候可以选择 2.订单表不需要跟地址表关联,当生成订单的时间,将用户的收货地址所有信息,生成为一个字符串保存至订单 表一个字段中去,因为这个地址主要是查看订单详情里面使用,不会做改动,这样如果用户在订单完成后修改了地址,查看订单详情也不会改为新的。 淘宝应该就是这样实现的,可以去看看
这样设计地址的话更好点
balabala_sean 2014-06-09
  • 打赏
  • 举报
回复
用户 many to many 地址 :建立第三方关联表 用户 one to many 订单 : 用户在订单表是外键 地址 one to one 订单 : 用户在订单表是引用地址id 最好先搞清楚物理数据模型的关系再做表,powerdesigner..
JunEric 2014-06-08
  • 打赏
  • 举报
回复
引用 3 楼 cbxjj 的回复:
1. 还是要方案1这样做,必须要维护一张收货地址表,让用户提交订单的时候可以选择 2.订单表不需要跟地址表关联,当生成订单的时间,将用户的收货地址所有信息,生成为一个字符串保存至订单 表一个字段中去,因为这个地址主要是查看订单详情里面使用,不会做改动,这样如果用户在订单完成后修改了地址,查看订单详情也不会改为新的。 淘宝应该就是这样实现的,可以去看看
谢谢~指导。
剑神一笑 2014-06-08
  • 打赏
  • 举报
回复
1. 还是要方案1这样做,必须要维护一张收货地址表,让用户提交订单的时候可以选择 2.订单表不需要跟地址表关联,当生成订单的时间,将用户的收货地址所有信息,生成为一个字符串保存至订单 表一个字段中去,因为这个地址主要是查看订单详情里面使用,不会做改动,这样如果用户在订单完成后修改了地址,查看订单详情也不会改为新的。 淘宝应该就是这样实现的,可以去看看
JunEric 2014-06-08
  • 打赏
  • 举报
回复
引用 1 楼 u014547383 的回复:
分订单表和地址表,订单表中保存一个地址ID字段,对应地址表中的地址ID字段,然后通过关联查询获取地址表中的信息
但是你这样设计,我修改地址表中的信息,订单表关联的地址也会改变。我要的是即使修改了地址表也不影响订单的地址信息的较好方案
Z-ero 2014-06-08
  • 打赏
  • 举报
回复
分订单表和地址表,订单表中保存一个地址ID字段,对应地址表中的地址ID字段,然后通过关联查询获取地址表中的信息

81,115

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧