数据库建模,库存和产品变体

时间:2017-06-03 00:21:52

标签: database database-design

这些是要求。

  1. 多个卖家正在销售产品型号。
  2. 多个卖家可以同时销售单品变种。 (如果使db建模更简单,则可以放宽此要求。)
  3. 以下建模满足上述两个要求。

    ProductVariant
    * id
    
    Stock
    * id
    * product_variant
    * seller
    * quantity
    * prices
    

    还有另一项要求

    1. 多个变体可能需要在它们之间共享数量。
    2. 例如,教师(卖方)将他/她的产品列为以下内容。

      课程:下午2点$ 5.00 B级:下午2点$ 10.00。

      卖家正在销售A和B课程,但他只能收到一定数量的学生。即库存数量是共享的。

      为了实现共享数量,我引入了ProductVariant-Stock relation

      ProductVariant
      * id
      
      
      ProductvariantStock
      * id
      * product_variant
      * stock
      
      Stock
      * id
      * seller
      * quantity
      

      现在问题是,我应该把价格放在哪里?

      我能想到的第一个地方是在ProductvariantStock

      ProductvariantStock
      * id
      * product_variant
      * stock
      * price # here
      

      我能想到的另一个地方是股票

      Stock
      * id
      * seller
      * quantity
      * price_dict_for_product_variants (as json field)
      

      它具有仅使用库存表查询价格的优势。而且我认为我习惯于认为股票有数量和价格信息,这更符合心理模型。

      另一种方法是仅为价格创建SellerPrice表。

      SellerPrice
      * id
      * product_variant
      * seller
      * price
      

      我应该问自己挑选模特的问题是什么?

0 个答案:

没有答案