商城平台订单表设计

  • 订单数据是历史数据
  • 订单类型多种类

一套订单表

  • order 订单主表 id, title, uid, sn, order_class, order_time
  • order_ext 订单字段扩展 id, oid, name, val
  • order_status 订单状态 id, oid, status, order_class_id
  • order_details 订单详情 id, oid, product_name, price, amount
  • order_contact_info 订单人联系信息 id, oid, contact, mobile, address, user_contact_id
  • order_pay 订单人支持信息 id, oid, pay_name, pay_account
  • order_log 订单日志记录 id, oid, log_title, log_action, log_time

数据-一般订单会有用户的联系信息-有一个用户单独表来存, 一般可能订单会直接存这个表的ID做关联查询.
但是如果用户编辑或删除这个联系信息, 订单的数据就会发生改变.
订单的数据应该有独立的表来记录这些信息. order_contact_info


order 订单主表关联副表方法
– order-订单主表可用字段来决定调取哪个类型订单的副表.
– order-订单主表应用关联副表类型, 以副表为主 若副表没有数据则不读取.

参考资料

MySQL-订单表如何设计