第1讲(总第11讲)数据建模:思想与方法(暨数据库设计之抽象与表达方法)

1100-本讲学习什么(4分33秒)及第11讲教学课件

“数据建模与数据库设计”内容学习的目标?

  • 理解数据建模与数据库设计
  • 扎实地理解并掌握E-R模型/IDEF1X模型:数据建模与数据库设计的重要工具

能够绘制E-R图/IDEF1X图而且绘制得正确

  • 能够用E-R/IDEF1X模型准确理解现实世界并进行数据库设计

理解现实世界并进行抽象的能力,理解并抽象得正确

  • 能够分析数据库设计的正确性

1101-为什么要数据建模与数据库设计(5分21秒)

需求的理解,简单来讲,包括数据需求的理解和处理规则需求的理解.....

1102-数据模型与概念模型的概念(4分44秒)

1103-关于抽象的八个字(2分10秒)

1104-什么是E-R模型(2分21秒)

1105-实体与实例(6分48秒)

1106-联系与联系的元数(4分39秒)

参与发生联系的实体的数目,称为联系的度或元

联系有一元联系、二元联系和多元联系

联系是需要存储和处理的

实体是相对稳定的,但是联系是多样化的

一元联系:同一个实体中的实例之间的联系

1107-联系与联系的基数(6分29秒)

联系的基数(Cardinalities):实体实例之间的联系的数量,即一个实体的实例通过一个联系能与另一实体中相关联的实例的数目

常见的映射基数如上,有一对一的(1:1),一对多的(1:m),多对多的(m:n)几种情况

1108-Chen方法表达E-R模型(12分49秒)

1109-Chen方法建模案例-物资管理系统数据建模(8分20秒)

Step1理解需求,寻找实体

E-R图建模首先要找出问题领域的实体,即找出有哪些类/实体

能够用一个个、一件件、一串串等重叠量词形容的,而不是一个、一件...

要覆盖需求涉及的可独立管理的每一类事物

Step2用属性刻画每一个实体,至少要给出一个重要属性

Step3确定每一个实体的关键字/码,关键字属性是必须要标记清晰的

Step4数据建模的重点是分析实体之间的联系

Step5检查是否覆盖了需求

1110-Crow's Foot方法表达E-R模型(8分40秒)

联系:菱形框表示,也可以将菱形框省略而直接以联系名来替代

1111-Crow's Foot方法建模案例-物资管理系统数据建模(4分55秒)

1112-型与值和三个世界(7分54秒)

信息

  • 信息是现实世界中事物在人们头脑中的一种反映
  • 信息可以准确地反映现实世界中事物(描述)
  • 也可以通过对现实进行抽象,形成信息(抽象)

数据库设计往往因为忽视了信息(之间联系)的细致分析而造成设计失误

数据库设计能力的高低往住体现在信息(及其联系)的正确分析上,体现在理解现实世界能力的高低

三个世界与多层(级)抽象

现实世界==>(描述、抽象为)信息世界==>(描述、抽象为)计算机世界

现实(客观存在)==>抽象/描述(概念/观念)==>计算机中(用计算机实现)

类似的概念:

  • “型”(Type)与值(Value)
  • ”模式(Schema)与“数据(Data)“
  • “数据模型(DataModel)“与“模式(Schema)”
  • ”模式(Schema)”与“实例(Instance)”
  • “类(Class)”与”对象(Object)“
  • ”实体(Entity)”与“实例(Instance)”

1113-数据模型与两种抽象层次(8分06秒)

数据模型

  • 不同范围的人对现实世界中事物的描述和抽象可能是不同的
  • 现实的抽象与描述需要遵循统一的数据模型:统一的概念与统一的表达方法
  • 数据模型是一组相互关联且已严格定义的概态集合,是用于刻画或描述现实世界、信息世界或计算机世界的模型
  • 用统一的模型建模也是计算机学科学生所无为擅长的能力

统一是为了信息交流、信息共享

1114-再看抽象层次(6分39秒)

建模的不同层次:模型与元模型,模型(型)与实例(值)

第1讲(总第11讲)模拟题

实体虽然是指一个个可相互区分的个体,但E-R图建模是要寻找这些个体的“型”,而非这些个体本身;

实体是可以用重叠量词来形容的,在问题域中不能用重叠量词形容的则不是实体;

联系是指一个实体的实例与另一个实体的实例之间可能存在的某种联系;

在发现联系的过程中重点是联系的基数的判定即一个实体实例能够和另外实体的多少个实例发生联系,因为这将影响数据库设计——如何处理联系。

参与发生联系的实体的数目,称为联系的度或元。联系有一元联系、二元联系和多元联系

模型是依据元模型中的抽象概念及其关系,对现实世界进行理解,获得具体概念及其具体关系所形成的;

元模型是对模型的抽象,而模型是对现实世界的抽象;

同一元模型,可以产生不同的模型;而同一现实世界,也可以产生不同的模型。