计算机二级 公共基础知识部分
第5章 数据库设计基础
5.1 数据库系统的基本概念
1. 数据库系统
? 组成:数据库(数据)、数据库管理系统、数据库管理员、硬件平台、软件平台. ? 核心:数据库. ? 数据库管理系统:
? ? ?
负责:数据组织、数据操纵、数据维护、控制及保护和数据服务.
功能包括:数据模式定义、数据存取的物理构建、数据操纵、数据的完整性/安全性定义与检查、数据库的并发控制与故障恢复、数据的服务.
数据语言帮助完成上述功能,包括数据定义语言、数据操纵语言和数据控制语言. 数据定义语言:负责数据的模式定义与数据的物理存取构建. 数据操纵语言:负责数据的操纵,包括查询及增、删、改的操作.
数据控制语言:负责数据完整性、安全性的定义与检查及并发控制、故障恢复等功能.
2. 数据库系统的发展
数据管理者 数据共享程度 数据独立性 数据结构化 人工管理 人 无共享 冗余度大 不独立 完全依赖于程序 无结构 文件系统 文件系统 共享性差 冗余度大 独立性差 记录内有结构 整体无结构 数据库系统 数据库管理系统 共享性大 冗余度小 具有高度的物理独立性和一定的逻辑独立性 结构整体化 用数据模型描述 3. 数据库系统的基本特点
? 数据的集成性
? 数据的高共享性和低冗余性
? ?
减少冗余性以避免数据的不同出现是保证系统一致性的基础.
数据的独立性是指数据与程序之间互不依赖,数据的逻辑结构、存储结构与存取方式的改变不会改变应用程序. 包括:
物理独立性:如存储设备的更换、物理存储的更换、存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化.
逻辑独立性:如修改数据模式、增加新数据类型、改变数据间联系等,不需要相应修改应用程序.
? 数据统一管理与控制 ? 数据独立性
16
计算机二级 公共基础知识部分
4. 数据库系统的内部体系结构
? 三级模式:
? ? ?
概念模式:数据库系统中全局数据逻辑结构的描述. 外模式:给出每个用户的局部数据描述.
内模式:给出数据库物理存储结构与物理存储方法. (存储级)
5.2 数据模型
1. 数据模型的基本概念
? 数据模型所描述的内容有三个部分:数据结构、数据操作与数据约束. ? 数据模型按不同的应用层次分为三种类型:
? ? ?
概念数据模型:面对客观世界、面对用户的模型.
逻辑数据模型:面对数据库的模型,包括层次模型、网状模型、关系模型、面对对象模型. 物理数据模型:面对计算机物理表示的模型.
2. E-R模型
? 该模型将现实世界的要求转化为实体、联系、属性等基本概念. ? 实体集间的函数关系可能有一对一、一对多(多对一)和多对多. ? 图形表示:矩形表示实体集、椭圆表示属性、菱形表示联系.
3. 层次模型和网状模型
? 层次模型基本机构是树形结构,自顶向下、层次分明. ? 网状模型是一个不加任何条件限制的无向图.
4. 关系模型
? 关系模型采用二维表来表示.
? ? ? ?
每行数据成为元组,一个元组由n个元组分量组成;一个表框架可存放m个元组,m称为表的基数. 在二维表中凡能唯一标识元组的最小属性集成为该表的键或码. 二维表中可能有若干个键,它们称为该表的候选码或候选键. 从二维表所有候选键中选取一个作为用户使用的键成为主键或主码.
? 关系操纵:一般有查询、增加、删除及修改四种操作. ? 关系中的数据约束:
? ? ?
实体完整性约束:要求关系的主键中属性值不能为空值. 参照完整性约束:不允许关系引用不存在的元组. 用户定义的完整性约束.
17
计算机二级 公共基础知识部分
5.3 关系代数
1. 关系模型的基本运算
? 并运算
? 投影运算(一元运算):选出需要的列
? 笛卡尔积运算
? 差运算
? 选择运算(一元运算):选出需要的行
18
计算机二级 公共基础知识部分
2. 关系模型的扩充运算
? 交运算
? 除运算
? 连接与自然连接运算.
自然连接的条件:两个关系间含有一个或多个共有的属性.
5.4 数据库设计与管理
1. 数据库设计的四个阶段
? 需求分析
? 概念设计:对现实抽象,使用E-R模型、视图集成法等. ? 逻辑设计:
?
从E-R图向关系模式转换:
E-R模型 属性 实体 ?
关系模式 属性 元组 E-R模型 实体集 联系 关系模式 关系 关系 逻辑模式规范化解决数据冗余、插入异常、删除异常及修改异常等问题.
19
计算机二级 公共基础知识部分
? 物理设计:包含索引设计、集簇设计和分区设计.
2. 关系模式
? 第一范式:数据库的每一列都是不可分割的基本数据项,也就是说实体中的某个属性不能有多个值或者
不能有重复的属性.
? 第二范式:满足第一范式基础上,每个非主属性都没有对主键的部分依赖.
? 第三范式:满足第二范式基础上,每个非主属性都直接依赖于主键,不存在传递依赖.
20