为数据库创建ERD

时间:2019-03-15 11:42:31

标签: database-design erd

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

作为一个实体,我想到了PriceRentalCustomerWishlistRentalMovie_title还有Movie_Category之间存在另一种关系。

这是我的ERD

ERD

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

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

此外,我想知道我的ERD(动词和人际关系)是否有建议的更正。

2 个答案:

答案 0 :(得分:1)

您可能想更努力地避免在各处使用“有”一词。

“愿望清单”实际上是客户与标题之间的多对多关系(客户的愿望清单中可能出现任意数量的标题,而客户的愿望清单中可能包含任意数量的标题)。

您可能需要重新考虑整个租金/价格问题。这种关系首先代表什么?

关于退款的问题:如果您不告诉我们此处所表示的信息是什么(例如,您是否打算将其作为是Y / N标志来表示已退款,还是打算这样做)等于某个日期可以退款的金额,或者还有其他金额?),没有认真的专业人员可以给您任何认真的答案。

答案 1 :(得分:0)

选项1 退款应该是出租表的属性,因为每当取消租借电影时,用户都会更新出租 >通过将名为Refund的单列值从false更新为true来记录表。

如果不需要进一步的信息,应该这样做。

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

选项2 。如果需要信息来查看返回电影的人的详细信息,并且需要单独的表格来输入此表的详细信息,退款应该是一个表。

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

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