目录
第二节 数据模型
一.基本理解
二.概念模型
三.数据模型的组成要素
四.关系模型
第三节.数据库系统的结构
一.数据库系统模式的概念(对“型”的理解)
二.数据库系统的三级模式结构
三.数据库的二级映像功能
难重点:
1.对两类数据模型的理解
2.对数据模型组成要素的理解
3.对关系模型的理解
1.数据模型是对现实世界数据特征的抽象 ,即对于现实世界的模拟,数据模型是数据库系统的核心和基础
2.根据应用目的不同可分为两个层次
概念模型(信息模型):从用户角度,用于数据库设计
逻辑模型和物理模型
逻辑模型是按照计算机的观点对数据建模
物理模型是对数据底层的抽象(不比过多关注)
客观对象的抽象过程——两步抽象
现实世界 ——> 概念模型,由数据库设计人员完成
概念模型 ——> 逻辑模型,由数据库设计人员完成
逻辑模型 ——> 物理模型,由DBMS完成
1.概念模型的用途和对概念模型的基本要求
2.基本概念
实体:客观存在并可相互区别的事物称为实体(学校的学生)
可以是具体的人、事、物或抽象的概念
属性 :实体所具有的某一特性称为属性
码:唯一标识实体的属性集
即用来区分不同实体的属性,可以一个也可以是多个(学生学号、学生姓名+性别)
可以区分实体就是码,没有数量要求
实体型:用实体名及其属性名集合来抽象和刻画同类实体
可以理解为刻画实体的模子或框架
学生(姓名 性别 学号 )
体现了“型”的概念
实体集:同一类型实体的集合称为实体集
所有学生记录的集合
体现“值”的概念
学生记录变化很大,所以“值”的概念不稳定,“型”的概念更稳定
联系:现实世界中事物内部以及事物之间的联系
概念模型的一种表示方法
实体-联系方法(Entity-Relationship approach)
E-R方法也称为E-R模型
数据结构
1.数据结构:描述数据库的组成对象,以及对象之间的联系
2.数据结构是对系统静态特征的描述
数据操作
1.数据操作:对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则
2.类型:
查询
更新:增、删、改
3.数据操作是对系统动态特性的描述
数据的完整性约束条件
一组完整性规则的集合,即保证存入数据库的数据符合要求
1.关系模型的数据结构
在用户观点中,关系模型数据的逻辑结构是一张二维表,这个表叫关系
元组:表中的一行称为一个元组,关系中有多少行就有多少元组
属性:表中的一列称为一个属性,关系中有多少列就有多少属性
域:是一组具有相同数据类型的值的集合
属性中所有可能取到值的集合就是值域
分量:元组中的一个属性值
关系模式:对关系的描述,属于”型“
表示为:关系名(属性1,属性2,……,属性n)
在码下面画一条下划线
关系必须是规范化的
关系必须是规范化的
最基本的规范条件:关系的每一个分量必须是一个不可分的数据项
不允许表中还有表
关系术语 | 表格术语 |
---|---|
关系名 | 表名 |
关系模式 | 表头(表格描述) |
关系 | 二维表 |
元组 | 行 |
属性 | 列 |
属性名 | 列名 |
属性值 | 列值 |
分量 | 记录的值 |
非规范关系 | 表中有表 |
2.关系数据模型的操纵和完整性约束
数据操作是集合操作,操作对象和操作结果都是关系
查询
插入、删除、修改
数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合
存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么干”
3.关系模型的优缺点
优点
关系模型建立在数学概念上
概念单一:联系都用关系表示
关系模型的存取路径对用户隐蔽
缺点
查询效率不如格式化数据模型
对用户请不断优化,增加开发难度
重难点
1.对“型”和“值”概念的理解
2.对三级模式结构的理解
3.对二级映像功能的理解
模式 | 实例 |
---|---|
数据库逻辑结构和特征的描述 | 模式的一个具体值 |
是型的描述 | 反映数据库某一时刻的状态 |
反映的是数据的结构及其联系 | 同一个模式可以有很多实例 |
模式是相对稳定的 | 实例随数据库中的数据的更新而变动 |
外模式——模式——内模式
1.模式——全局
模式是数据库中全体数据的逻辑结构和特征的描述。从全局的角度理解
一个数据库只有一个模式
模式的地位:是数据库系统模式结构的中间层
与物理及硬件环境无关
与应用程序、开发工具、高级程序设计语言无关
模式定义语言:DDL
2.外模式——局部
数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述
数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
对视图的理解:视图是模式的一个子集
比如学生信息有姓名、学号、成绩、血型等,如果要开发一个成绩管理系统,那么学习、身高体重就不需要,有用的部分就是视图呈现出来
外模式的用途是保证数据库的安全性,不会让所有的模式都显示出来,用户只能访问对应外模式的数据
地位:介于模式和应用之间
模式与外模式的关系:一对多 ,外模式是模式的子集
外模式与应用的关系:一对多
3.内模式——存储模式
是数据物理结构和存储方式的描述、是数据在数据库内部的组织方式
一个数据库只有一个内模式
不会太关心内模式
外模式/模式映像
模式/内模式映像
1.有这两个映像的目的是使三级模式之间连通起来
2.可以把映像理解为一个对应关系或者一段代码,在模式变化的时候,保证外模式不会变化,外模式稳定则应用稳定
所谓数据的逻辑独立性:
当模式改变时,修改外模式/模式映像,使得外模式不变,从而应用程序不变,这就是保证数据的逻辑独立性
所谓数据的物理独立性:
当数据库存储结构改变了,修改模式/内模式映像,使得模式不变,模式不变而外模式不变,从而应用程序不变,这就是保证数据的物理独立性
总的来说二级映像最重要的就是要保证整个体系的稳定,不会使得“牵一发而动全身”,我们的最终目的就是保证外模式不变,从而使得应用程序不变
但是当外模式不能满足视图要求的时候,外模式也要做出改变,应用程序也要做出修改。