如何改进此数据库模型?

kur*_*_89 0 sql sql-server visio entity-relationship relational-database

我正在尝试为客户设计DVD销售和DVD租赁的关系.虽然我不认为我的转换表是正确的.如果有人能让我知道我是否朝着正确的方向前进,那么设计会很棒.

关系模型

小智 5

这是您设计此方法的一种方法.

我不是数据库专家.我为几乎没有表的小型应用程序设计了数据库.我尝试 (强调尝试,有时我没有)尽可能更通用,所以当有范围变化时我不会被限制在一个角落.

  1. 在你的图表中,我注意到一些事情,比如你只卖DVD的假设.如果店主开始销售蓝光光盘或便携式游戏机,会发生什么.我的建议是保持设计的通用性.所以我将DVD表改为Item,以便表可以容纳任何东西.

  2. 我还添加了Item类型表,以便您可以定义它是什么类型的项目.

  3. 您的交易应被视为单个订单.客户可以下单,可以包含他们想要购买的一组商品,也可以包含他们想要租用的商品.你不会要求他们刷卡两次,不是吗?而是在订单标题中为客户创建订单,并将其订单项放在订单明细表中.订单明细表还将指定数量,例如客户想要购买/租用的商品数量.租用时,返回日期字段开头为空.当他们退回商品时,您可以通过搜索商品ID和客户ID组合返回并填写日期.

您可以n通过多种方式进行设计,但信息有限,这就是我能想到的.

我并不是说这是最好的设计.我希望这能让你有一些想法从这里拿出它并根据你的需要进行微调.

Database_design