4

在我继续将我的实体关系图转换为 SQL 语句之前,我想我会问是否有人可以验证这个模型是否不包含一旦我拥有 SQL 数据库模式就会出现的任何荒谬和异常。

我特别不确定客户和 VIP 之间关系的基数。此外,供应商和 CD 的关系。VIP 实体的start_date - 它应该是弱键吗?除了Song实体的name属性之外,还有其他潜在的弱键吗?

E/R 模型

传奇

  • 实体在此处输入图像描述
  • 属性在此处输入图像描述
  • 弱实体在此处输入图像描述
  • 关系在此处输入图像描述
  • 识别关系在此处输入图像描述
  • 基数比在此处输入图像描述

我使用以下网站作为参考来构建我的图表:

  1. http://en.wikipedia.org/wiki/File:ERD_Representation.svg
  2. http://en.wikipedia.org/wiki/Entity-relationship_model
  3. http://www.cse.ohio-state.edu/~gurari/course/cse670/cse670Ch2.xht

用于创建图表的软件:Dia (Linux)

4

1 回答 1

1

抱歉,这是一个迟到的答案,但如果它有用,您可以进行两项改进。

1)“VIP”和“CUSTOMER”之间的“is-a”关系表示存在超类(客户)和子类(vip)。您可能希望将 VIP 建模为子类。

2)由于您正在跟踪关系“租金”的日期,因此必须“随时间”采用基数。因此双方的基数都是“N”(即,客户一方不是“1”)

小改进:在“Song”(弱实体类)中将部分标识符设置为“track”而不是“name”;这将允许在一张 CD 上对同一首歌曲进行多次录制(例如,2 个版本)。曲目编号在 CD 中始终是唯一的

于 2012-08-26T02:32:28.870 回答