一个USER表,一个GOODS表,他们产生一个ORDER的关系,USER对于GOODS应该是M:N,理论上需要产生一个新的表Order,userid和goodsid为主键,但是订单的ID应该是主键,一个人可以对同一个商品下不同的订单,所以把userid,goodid,orderid三个当主键也不行,这个应该怎么设计呢?

解决方案 »

  1.   

    做到低耦合   user   goods   orders  分别是三个表
    不要做太多关联   order表当然是orderid作为主键就ok了
      

  2.   

    先画出你的ER图,标明对于关系,然后你按照ER图转换为实体联系图的原则就可以知道应该都多少表了。
      

  3.   

     user good orderHeader orderDetail 分别是四个表。用户表,物料表,订单主表,订单明细表
    userID 是 user主键
    goodID 是 good主键
    orderID是 orderHeader主键
    orderID,是orderDetail 外键 sID 是orderDetail主键。
    一张订单可以购买多个物品