令人困惑的场景绘制ER图

时间:2016-05-19 08:45:59

标签: database relational-database entity-relationship erd

嗨,所有堆栈溢出成员,

我正在研究关系数据库模块中的实体关系图。我们已经了解了ER图足以构建实体,识别每个实体的属性,包括主键,外键,实体之间的关系和基数约束。

我们得到了考文垂大学的正式场景,并要求根据该场景绘制ER图。问题是;没有一个学生得到正确的答案(对ERD不满意),甚至教师和老师都对此感到困惑。我按照我的理解回答了这个问题,但我对自己的回答并不满意。

这是情景:

  

考虑以下场景建模项目管理活动   在一个组织中。

一家汽车销售公司提供给它   客户可以选择使用还款计划购买汽车   超过1年,2年,3年,4年或5年。
客户可以   根据该计划购买一辆或多辆汽车。当顾客购买时   一辆车,他或她可以选择其中一种还款方案   每次购买或者可以一次性支付全部金额,意思是   还款计划选项可以由一个或多个客户选择或   可能根本没有被选中。客户将拥有一个独特的客户   号码,姓名,地址和电话号码。还款计划   选项将具有唯一的还款计划编号,名称和   还款年数。一辆汽车将拥有独特的汽车密码   制造,型号,制造年份和价格。

公司   向销售人员支付汽车销售佣金,因此也是如此   还将保留每个销售的信息,其中包括一个独特的   销售的销售ID和佣金。该公司也将   想知道是谁制作了销售和汽车参与其中   交易使佣金可以确定。一名销售员   将拥有唯一的销售员ID,姓名,电话号码和电子邮件   地址。

这是要求/问题: 为上面给出的场景构建实体关系图(ERD)。识别所有实体, 每个实体的属性包括主键,外键,实体之间的关系和 基数约束。说明支持您的设计所需的任何假设。

我的回答:

Car sale database diagram

我想知道我的答案是否正确?如果不是/什么是正确答案?

谢谢

1 个答案:

答案 0 :(得分:2)

欢迎使用StackOverflow。感谢您展示自己的答案。

您的回答反馈:

你的钥匙有些困难。您的所有外键都不需要包含在主键中。

您将每个客户与repayment_scheme_number相关联,这意味着客户只能为其所有购买选择一种还款方案。我读到这项任务说他可以为每次购买选择一个方案:

  

当客户购买汽车时,他或她可以为每次购买选择一种还款计划选项

通过将每辆车与客户和销售人员联系起来,汽车只能出售一次,而且销售与售出的汽车之间没有任何关系。

您也没有区分实体和关系。外键约束不是关系,ER中的关系实现为表(或ER术语中的关系关系,而不是实体关系)。外键约束只是完整性约束,以确保您不会将不存在的值关联起来。

我的回答:

Car sale ER diagram

我使用了Chen的符号,因为它区分了实体和关系。外键约束由实体和关系之间的线表示。

直接实施,物理模型如下所示:

Car sale physical model

如您所见,此格式并不表示哪些表表示实体或关系,但可以通过查看表的主键来确定。通过对具有相同行列式的关系进行非规范化,可以获得更有效的设计:

Car sale physical model 2