0

以下のモデルを考えると:

CustomerType1(id, telephone, address)
CustomerType2(id, telephone, name)

OrderType1(id, timestamp, customerType1.id, comments, enum1)
OrderType2(id, timestamp, customerType2.id, comments)
OrderType3(id, timestamp, name)

以下をどのようにモデル化しますか?

OrderList(id, OrderType.id, ..)
OrderItem(OrderList.id, MenuItem.id)

A. orderTypes に適応するために、3 つの異なるタイプの Or​​derLists が必要ですか?

OrderList1(id, OrderType1.id, ..)
OrderItem1(OrderList1.id, MenuItem.id)

OrderList2(id, OrderType2.id, ..)
OrderItem2(OrderList2.id, MenuItem.id)

OrderList3(id, OrderType3.id, ..)
OrderItem3(OrderList3.id, MenuItem.id)

または

B. orderLists と OrderTypes の間の関係の 3 つの定義はより良いでしょうか?

OrderList_Type1(orderList.id, orderType1.id)
OrderList_Type2(orderList.id, orderType2.id)
OrderList_Type3(orderList.id, orderType3.id)

これはデータを保存する方法としては非常に非効率的で、モデル化が本当に間違っているように感じます (それでも意味はありますが、スケーリングや効率には良くないのでしょうか?)。これをモデル化するより良い方法はありますか?

注: 指定されたモデルは変更できますが、同じ情報が含まれている必要があります。

4

1 に答える 1