从模式创建 ERD?

Creating a ERD from schema?

有人告诉我根据以下内容创建 ERD 图

The college keeps track of each student’s name, student number, social security
number, address, phone, date-of-birth, and gender.

– Each programme is described by a programme code, name, description, duration
(number of years), level, and the cost.

– Each module has a module code, name, description, duration (number of weeks),
level (introductory, intermediate, advance).

– Grade stores student number, module code, and a letter grade (A, B, C, D, E, F).

Each program enrolls students. Students then register modules. At the end of the
study duration of a module students receive their grades.

我已经为每个实体制作了属性

Student
(sNmber, SSN, sName, address, phone, DOB, gender)

Programme
(pCode, name, description, duration, level, cost)

Module
(mCode, name, description, duration, level)

Grade
(sNumber, mCode, grade)

我的最终图表看起来也是这样的实体关系,我知道我必须将 M:N 关系分解为两个 1:M ex。 Contains - programme_ Modules (pCode, mCode)

但是我的图表似乎与要评分的连接模块和学生不符??

我对此很陌生,非常感谢您的指点

首先,"schema" 不够明确,不能称为模式。尽管密钥对您来说可能是显而易见的,但它们并未被识别。充其量,它是一种描述,而且是一种不完整的描述。例如。如果它是模式,M::N 问题将得到解决,table 将被命名,所有键将被识别。

在 ERD 中,您没有显示必需的属性。接下来,您需要显示哪些属性是 Keys。

ERD

这是一个 ERD,使用稍微改进的符号,根据您的描述建立。

注意关系键:

  • 它们是复合体

  • 他们需要:

    • 防止重复行
    • 强制执行关系完整性,这是合乎逻辑的(与引用完整性不同,后者是物理的)
      例如,我们想要约束 学生注册他注册的课程中的模块。

关系数据模型

显然,ERD 非常有限,它无法显示关系数据模型中所有可能和需要的定义。此外,正如所证明的那样,它很快就会变得拥挤。

教授关系数据库的 ERD 是很荒谬的。在现实世界中,我们不使用 ERD 来建模数据,我们使用 IDEF1X,自 1993 年以来的关系数据建模标准。这就是它的样子。

注意 • 表示法

注意 • 内容

  • 主键和备用键都是显式的。

  • Module里的Level就明白了。 Programme中的Level不清楚。跟前者可能有关系,也可能没有关系。

  • 谓词可以直接从模型中读取。如果您需要它们的文本形式,请询问。