数据库架构设计:更优化的架构

时间:2017-02-12 16:12:57

标签: xml database database-design

我将为以下XML文件构建架构:

<Item ItemID="1045677572">
<Bids>
    <Bid>
        <Bidder Rating="1097" UserID="catann1">
            <Location>Longmont, Colorado</Location>
            <Country>USA</Country>
        </Bidder>
        <Time>Dec-10-01 06:43:24</Time><Amount>$0.99</Amount>
    </Bid>
...
</Bids>
<Seller Rating="87" UserID="efritz68"/>
</Item>

XML:投标人可选择位置和国家/地区信息。但是,卖方不需要这些信息。投标人可以同时成为卖家。用户可以对多个项目出价。在这种情况下,他的评级,位置和国家/地区信息在所有出价中都是相同的。如果卖家还在其他商品上出价,则用户可能有两个单独的评级作为出价人和卖家

我不确定哪种架构更适合存储用户。 这是我的架构:

1)

  • 用户(用户ID,位置,国家/地区)
  • 投标人(UserID,评级)
  • 卖家(UserID,评级)

2)

  • 投标人(用户ID,评级,位置,国家/地区)
  • 卖家(UserID,评级)
  • 用户(UserID)

1 个答案:

答案 0 :(得分:1)

您的架构(无论您是否喜欢):

Item (ItemID, SellerUserID, ...)
User (UserID, BidRating, SellRating, ...)
Bid (UserID, ItemID, Amount, Timestamp, ...)

您的XML是此架构的非规范化版本。