为数据库创建 ERD

Creating ERD for the database

我正在尝试基于 https://vod.shaw.ca 创建 erd。

作为一个实体,我想出了 PriceRentalCustomerWishlist 而与RentalMovie_titleMovie_Category又有关系。

这是我的 ERD

我的问题是,我不确定是否需要在我的 ERD 中包含 Refund

我认为退款可能是 Rental 的属性之一,但在某种程度上它可能是另一个 table。

此外,我很想知道是否有针对我的 ERD(动词和关系)的任何建议更正。

Option1: Refund 应该是 Rental table 的属性,因为每当取消电影租赁时,用户都会通过将名为 Refund 的单列值从 false 更新为 true 来更新 Rental table 记录。

如果不需要更多信息,应该这样做。

插入:您将需要编写仅与租赁相关的插入查询 删除:删除租借后,您将无法保留退款记录。 更新:稍后必须编写更新查询。

选项 2Refund 应该是 table 如果需要信息来查看 return 电影的人的详细信息,并且有一个单独的表格来输入此 table.

插入:您只需要编写与退款相关的插入查询 删除:如果删除退款,您将无法保留租赁记录。

所以一切都取决于系统用户的要求。

您可能需要更加努力地避免到处使用 'has' 这个词。

可能 'wishlist' 实际上是客户与标题之间的 many-many 关系(任意数量的标题可能出现在客户的愿望清单上,并且标题可能出现在任意数量的客户的愿望清单)。

您可能想要重新考虑整个 rental/price 事情。这种关系首先代表什么?

至于退款问题:如果您不告诉我们此处表示的信息类型(例如,您是否打算将其设为 Y/N 标志,表明已完成某些退款,或者这是打算在某个日期退还的一些金额,还是其他什么?),没有认真的专业人士可以给你任何认真的答案。