数据库(笔记)——三个世界与数据模型

现实世界

现实世界也就是客观存在的世界,这一概念在数据库中指的是对某一事物的描述,描述其各方面特征以及是否与其他事物存在联系

信息世界

信息世界是对客观事物的抽象描述,是对现实世界经过分析、归纳和抽象得到的信息,这样的信息具有一定的格式。

信息世界中存在以下概念:

  • 实体:指现实世界中一个客观存在的事物
  • 属性:实体的某一特征
    • 属性型:指属性名
    • 属性值:某一属性名的一个具体值
  • 实体集:同一类型实体的集合,比如所有学生是一个实体集
  • 实体型:实体名 + 所有属性名,如学生(姓名,学号,年龄,性别,··)
  • 码:能为一标识一个实体的属性或属性集称为实体的码
  • 域:属性的取值范围,比如性别这一属性的域就是{男,女}
  • 联系:单个实体型内部的属性存在着联系,不同实体型之间也存在着联系

对于两个实体型之间的联系有如下三种类型

  • 一对一:A实体集中的每一个实体最多对应B实体集中的一个实体
  • 一对多:A实体集中的每一个实体可以对应B实体集中的多个实体
  • 多对多:A实体集对实体集B一对多,同时实体集B对实体集A也是一对多的关系

两个实体型之间的联系是实体与实体的对应关系,而单个实体型内部联系通常是属性与属性的关系
一对一中,强调最多是因为,一对一关系中,不是所有A实体集中的实体在B中都有一个与它对应
另外,多于多个实体型之间的联系,其说到底也是由多个两个实体型之间的联系组合形成的两实体型之间的联系

计算机世界

计算机世界是对信息世界的再一次抽象,将其信息化,使得信息能够存储在计算机中,有如下点:

  • 字段:就是属性名,有型和值
  • 记录:字段的有序集合,有型和值
  • 文件:同类记录的集合,也就是一个实体集
  • 关键字:能够唯一标识每个记录的字段或字段集
    三个世界的对应关系

从数据模型角度看三个世界

三个世界,两级抽象

概念模型:也叫信息模型,对现实世界的一级抽象的结果
数据模型:也叫逻辑模型是对数据及其联系的描述,包括了组织方式、表达方式和存储路径,它是对现实世界的两级抽象的结果

数据模型的一般组成要素

  • 数据结构:包括了数据的类型、内容、性质以及数据之间的联系
    • 有层次结构、网状结构、关系结构
  • 数据操作:对数据的增、删、改、查、排序等
  • 数据的完整性约束:对数据的约束,比如规定值域,规定对数据的操作

数据模型的常用类型

  • 层次模型
    单个树形结构,只有一个根节点
    层次模型

层次结构的数据操纵与数据完整性约束

  • 插入时(操纵),没有双亲的不能插入子女结点值(约束)(下同)
  • 删除时,如果删除双亲结点,对应子女也很会被删除
  • 修改时,应该修改对应的记录来保证数据的一致性(也就是会有修改双亲的可能)

优点:简单、分明、查询效率高、提供良好数据完整性支持
缺点:不能表示多对多联系,插入和删除限制多、查询子女必须通过双亲结点

  • 网状模型
    采用有向图结构来表示,也是离散中图论常见的形式,没有根节点
    网状模型

与层次模型的区别
网状可以没有双亲、可有多个双亲、两个节点多种联系
层次是网状的特例
网状结构的数据操纵与数据完整性约束

  • 插入数据时,允许插入尚未确定双亲的结点
  • 删除数据时,允许只删除双清
  • 修改数据时,只需更新指定记录

优点:可实现多种复杂联系、具有良好性能和存储效率
缺点:数据结构复杂、数据定义、数据操纵语言复杂、用户需要了解系统结构细节

  • 关系模型
    通过二维表的形式来存储数据,通过关系来表示数据结构
    (这里的关系抽象来说就是1:1、1:n、m:n)
    二维表

分量:每一行对应的属性值
关键字:可唯一标识一元组的属性或属性集(如某个学生的学号)
关系模式:对关系的描述,如:学生(学号,姓名,性别,年龄,专业,班级)
关系实列:也就是关系模式的某一个“值”
关系模型的数据操纵与完整性约束

  • 操作对象和操作结构都是关系,(集合为操作对象)
  • 用户不需要知道数据存储路径,只需要指出做什么就行
  • 能进行记录集合的操作

优点:有严格的数学理论依据、用关系描述实体间联系、更高的数据独立和保密性
缺点:查询效率不如非关系模型

  • 面向对象模型
    对象间的对应

对象:现实世界实体的模型化
对象标识:独立于对象和存储位置,是一种逻辑标识符,通常由系统产生
对象内部相同和标识符相同才认为两个对象相同
对象中包含一组属性和方法(函数)
类:具有同样属性和方法集的对象构成

  • 类的属性可以说数据类型,也可以由类
  • 类的表示具有层次性和继承性

优点:能完整描述现实世界的数据结构、具有丰富的表达能力
缺点:模型相对复杂、涉及知识比较多

E-R图

E-R图中,由三部分组成:实体、属性、关系
图形表示方法
三种对应关系的表示1:1、1:n、m:n
实例
E-R图实例

总结

三个世界中,现实世界于信息世界都是于计算机无关的,只有经过两级抽象后得到的数据模型才能够被计算及使用和存储 对于信息世界的描述,即概念模型是通过E-R图来描述的 在关系模型中,二维表是存储数据的一个方式,他们之间的联系是通过认为规定的“关系”来确定的