第一章
1、 数据库概念:
数据库是长期纯在在计算机内、可共享的大量数据集合。数据库中的数据按一定的数据模型组织。描述和存储,既有较小冗余度。较高数据独立性和易扩展性,并可为各种用户共享
2、数据模型分类:分为概念模型和逻辑模型也是物理模型。
3、概念模型:
- 实体: 客观存在并可相互区别的事物
- 属性:具有某一特征称为属性
- 码:唯一标识实体属性的属性集称为码。
- 实体型:用属性名及其属性名集合来抽象和刻画同类实体称为实体型
- 联系:实体之间的联系通常是指不同实体集之间的联系
4、关系模型:
- 关系:一个关系对应通常说的一张 表
- 元组:表中的一行即为一个元组
- 属性:一列即为一个属性
- 码:表中的某个属性组可以唯一确定元组
- 域:相同数据类型的值的集合
- 分量:元组中的一个属性值
- 关系模式:对关系的描述
5、数据模型的组成要素
- 数据结构
- 数据操作
- 数据完整性的约束条件
常用的数据模型:层次模型,网状模型,关系模型。
6、三级模式结构
- 模式:也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述是所有用户的公共数据视图
- 外模式:也称子模式或用户模式,特是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。
- 内模式:也称存储模式,一个数据可只有一个内模式,是根据是数据物理结构和存储方式的描述,是数据库内部的组织方式。
第二章
1、关系
R表示关系的名字,n是关系的目或度。当n=1时该关系为单元关系,当n=2时称该关系为二元关系。
- 候选码:某一属性组能能够唯一标识某个元组,而子集不能。
- 主码,候选码中选定一个为主码
- 主属性:候选码中的所有属性称为主属性。不在候选码中的属性称为非主属性。
- 全码: 所有属性是这关系的候选码。
2、关系操作 :
分为查询操作和插入、删除、修改两大部分
查询操作又可以分为:选择、投影、并、差、笛卡尔积。
3、关系的完整性:
- 实体完整性:若属性a是基本关系的主属性,则a不能取空值。
- 参照完整系:设F是基本关系R的一个或一组属性,但不是关系R的码,Ks的基本关系S的住吗。如果F与Ks相对应,则称F是R的外码,并称基本关系R为参照关系,几倍呢关系S为被参照关系或目标关系。
- 用户定义完整性:
4、 关系代数:
第三章
索引作用:加快查询速度
视图
视图是从一个或者几个表导出的表。他与基本表不同,是一个虚表。数据据库中值存放视图的定义不存放视图的数据。
视图的作用
- 视图能够简化用户的操作
- 视图使用户能以多种角度看待同一数据
- 视图对重构数据库提供了一定程度的逻辑独立性
- 视图能够对机密数据提供安全保护
- 适当利用视图可以更清晰的表达查询
第四章
授权与回收
第五章
实体完整性的检查和违约处理
- 检查主码值是否唯一,如果不唯一则拒绝插入或修改
- 检查主码各属性是否为空,只要又一个为空就拒绝插入或修改。
参照完整性检查和违约处理
当上述不一致时,系统可以才用以下策略加以处理
- 拒绝执行
- 级联操作
- 设值为空值
用户定义完整性属性上约束条件的检查和违例处理:
当往表里插入元组或修改属性值时,关系数据库管理系统将检查属性上的约束条件是否被满足,若不满足则操作被拒绝执行。
第六章
GRANT<权限>
ON<对象类型><对象名>
TO<用户>
[WITH GRANT OPTION]
REVOKE
ON
FROM
数据依赖:
数据依赖分为函数依赖与多值依赖。
函数依赖
X函数确定Y或Y函数依赖于X。
函数依赖和别的数据依赖一样只是在语义范围的概念,只能根据语义来确定一个函数依赖。
- 平凡函数依赖
- 不平凡函数依赖
- 完全函数依赖
- 部分函数依赖
范式
- 第一范式 :每个分量都是不可分的数据项
- 第二范式:每一个非主属性完全函数依赖于如何一个候选码
- 第三范式:不包含非主属性对码的传递依赖每一列都是与组件直接相关
- BC范式消除每一属性对候选键的传递依赖每一个决定因素都包含码
公理系统![
![](https://img-blog.csdnimg.cn/911601846f244e28af978fedf53e83c5.png)
例题
数据库设计
数据库设计基本步骤
- 需求分析阶段
- 概念结构设计阶段
- 逻辑结构设计阶段
- 物理结构设计阶段
- 数据库实施阶段
- 数据库运行和维护阶段
E-R图之间的冲突主要又三类:属性冲突、命名冲突和结构冲突
- 属性冲突:即同一个属性在不同E-R表中属性值的类型取值范围或取值集合不同
- 命名冲突:不同意义对象相同名字或相同对象不同名字
- 结构冲突:1、统一对象在不同应用中具有不同抽象
2、同一实体在不同子系统的E-R图中包含的属性个数和属性排列不完全相同
3、实体间不同的E-R图中未不同的类型
E-R图向关系模式转换
- 一个1:1联系可以转换未一个独立的关系模式,也可以添加到任意一端关系模式合并
- 一个1:n联系可以转换未一个独立关系模式,也可以添加到n端关系模式合并
- 一个m:n联系转换为一个关系模式
- 三个或三个以上实体间的一个多元联系可以转换未一个关系模式
- 具有相同码的关系模式可以合并
物理结构设计
数据库的物理结构合计通常分为两步:
(1)确定数据库的物理结构
(2)对物理结构进行评价
数据库物理设计的内容与方法:分为存取结构和存取方法
常用的存取方法有索引方法和聚簇方法
评价物理结构:时间效率。空间效率、维护代价、各种用户要求进行权衡。
第十章
事务
事务就是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。
事物的ACID特性:原子性,一致性,隔离性,持续性。
故障的种类
- 事物内部的故障
- 系统故障
- 介质故障
- 计算机病毒
恢复的实现技术
关键问题是:如何建立冗余数据,以及如何利用冗余数据实施数据恢复
建立冗余数据最常用的技术就是数据转储和登记日志文件
恢复策略
事务故障的恢复
- 反向扫描日志文件,查找该事务的更新操作
- 对该事务的更新操作进行逆操作
- 继续方向扫日志文件,查找该事务的其他更新操作,并作同样处理
- 知道粗到此事务的开始标记,说明事务故障恢复完成。
系统故障的恢复(撤销未完成,重做已完成)
恢复步骤
- 正向扫描日志文件,对事务白哦是计入重做队列。同时找出未完成事务标记入撤销队列
- 对撤销队列中的各个事务进行撤销处理
- 对重做队列各个事务进行重做处理
第十一章
并发控制概述
并发操作带来问题
- 丢失修改
- 不可重复读
- 读”脏“数据
封锁
锁分为排他锁(写锁)和共享锁(写锁)
活锁问题和死锁问题
活锁:避免活锁方法是采用先来先服务的策略
死锁:预防死锁的方法分为一次封锁法和顺序封锁法。