数据库期末速成

发布时间 2024-01-08 08:32:41作者: P1ggy
数据库技术发展阶段
  1. 人工管理
  2. 文件系统
  3. 数据库系统
数据库的三级模式
  • 内模式
    一个数据库只有一个内模式
  • 模式
    也称概念模式或逻辑模式
    对数据库中全部数据的逻辑结构和特征的描述(数据项的名字、类型、取值范围)
    一个数据库只有一个模式
    位于模式结构的中间层
    与硬件无关,与具体的应用程序、开发工具及高级程序设计语言无关
  • 外模式
    数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述
    一个数据库可以有多个外模式,但是一个应用程序只能使用一个外模式

内模式-DBMS
模式-DBA
外模式-程序员

数据库-三级模式和两级映射

信息的三种世界
  • 现实世界
  • 信息世界(概念世界)
  • 数据世界(机器世界)

概念模型

基本概念
  • 实体:一名学生,一名教师
  • 属性:姓名,性别,年龄,大队
  • 码:学号(唯一标识符)
  • 实体型:学生(学号、姓名,性别,年龄,系。。。)(用实体名及其属性名集合来抽象刻画同类实体)
  • 实体集:全体学生(同型实体的集合)
  • 联系:教师实体与学社工实体之间存在教和学的联系,学生和课程之间存在选课联系
两个实体型之间的联系
  1. 一对一联系(1:1)
    一个区队只有一个区队长
    一个区队长旨在一个区队任职
  2. 一对多联系(1:M)
    一个区队中有若干名学生,每个学生只属于一个区队
  3. 多对多联系(M:N)
  4. 一门课程同时又若干个学生选修
  5. 一个学生可以同时选修多门课程
E-R图
  • 实体-矩形
  • 属性-椭圆形表示,并用无向边将其与相应的实体连接起来
  • 联系-棱形,用无向边把棱形框与有关实体连接起来,在无向边旁边著名联系的类型
  • 联系的属性-椭圆形表示,若联系具有属性,也要用无向边联系起来

数据模型

组成:数据结构、数据操作、数据的完整性约束

三种数据模型:
层次模型(非关系模型)、网状模型(非关系模型)、关系模型

层次模型:

用树形结构表示各类实体以及实体间的联系(无法直接表示多对多)

网状模型:

用网状结构,容易描述多对多联系

关系模型:

用二维表格表示实体及实体间的关系

一个关系对应一张二维表
二位表中的一行代表一个元组
二维表中的列称为属性,给每一个属性起一个名称即属性名
属性值是属性的具体取值
属性的取值范围称为域
关键字或码(唯一标识元组的属性)
...(不详细描述了)

关系数据库

  • 数据结构:关系
  • 逻辑结构:二维表

在每一个关系中,必须满足:
每一列数据类型相同,每个属性必须是单值,关系的结构不能嵌套。

关系是动态的,随时间变化的
关系模式是对关系的描述,是静态的,相对稳定的

关系完整性
  1. 实体完整性:关系的主码中属性具有唯一性且不能取空值
  2. 参照完整性:学生关系中国每个元组的“专业号”属性只能取两类值:空值和非空值
  3. 用户定义的完整性规则。

数据库设计

概念数据库设计
逻辑结构设计

将E-R图转换为具体DBMS所支持的逻辑数据模型

  • 一个实体转化为一个关系模式
  • 一个联系转换为一个关系模式

1:1联系转换
可以转换成一独立关系模式
也可以与一段模式合并

1:N联系转换
课转成一独立模式
也可以与N端模式合并

M:N联系转换
必须产生一新的独立模式

物理结构设计