-
第一章绪论
数据库是数据管理的有效技术,是计算机科学的重要分支。本章介绍数据库系统的基本概念,包括数据管理技术的发展过程、数据库系统的组成部分、数据模型的概念和含义、数据库的体系结构以及组成等内容。本章是整个课程的知识概念准备和基础,通过学习,读者可以认识到使用数据库技术的重要性以及必要性。
-
●1.1数据库系统概述
数据库最常用的术语和基本概念。
-
●1.2数据管理技术的产生和发展
数据管理技术的产生和发展,数据库系统的特点。
-
●1.3数据模型
数据模型是对现实世界数据特征的抽象,数据模型是用来描述数据、组织数据和对数据进行操作的。现有的数据库系统都是基于某种数据模型的。数据模型是现实世界的模拟,是数据库系统的核心和基础。
-
●1.4数据库系统的结构
从数据库应用开发人员的角度看,数据库系统通常采用三级模式结构,这是数据库系统内部的体系结构。三级模式结构带来了数据库系统数据独立性高的优点,可以简化应用程序的编制,减少应用程序的维护和修改。
-
●1.5数据库系统的组成
数据库系统的组成包括数据库、数据库管理系统及其应用开发工具、应用软件、硬件平台以及数据库管理员、分析和设计人员、应用程序员和用户等使用、开发和维护人员。
-
第二章关系数据库
关系数据库是基于关系数据模型的数据库系统。Edgar Frank Codd(E.F.Codd)在1970年代系统、严格地提出了关系模型,开创了数据库系统的新纪元,成为计算机科学发展史上最具里程碑意义的重大研究之一,关系数据库也成为最重要、应用最广泛的数据库系统,大大促进了数据库应用领域的扩大和深入。E.F.Codd也因此被称为“关系数据库之父”,并被授予1981年的图灵奖。本章讲授关系模型的基本概念,包括关系模型的数据结构、关系操作和关系的完整性约束。
-
●2.1关系数据结构及形式化定义
关系的基本概念、数据结构及形式化定义。
-
●2.2关系操作和关系的完整性约束
关系操作和关系数据语言简介,关系的完整性约束。
-
●2.3关系代数(一)
关系代数是一种抽象的查询语言,它用对关系的运算来表达查询。关系代数的运算包括四种集合运算和四种专门的关系运算。本小节讲述并、交、差和笛卡尔积四种集合运算以及选择和投影两种专门的关系运算。
-
●2.4关系代数(二)
关系代数是一种抽象的查询语言,它用对关系的运算来表达查询。关系代数的运算包括四种集合运算和四种专门的关系运算。本小节讲述另外两种专门的关系运算:连接和除。
-
第三章关系数据库标准语言SQL
结构化查询语言(Structured Query Language, SQL)是关系数据库的标准语言,使用SQL,可以实现数据库模式创建、数据的插入、删除、修改和查询以及数据库安全性、完整性的定义与控制等一系列功能。本章介绍SQL的基本功能,并进一步讲述关系数据库的基本概念。
-
●3.1SQL概述
SQL语言的概述。
-
●3.2数据定义
一个关系数据库的实例下可以建立过个数据库,一个数据库中可以建立多个模式,一个模式下通常可以包括多个数据表、视图以及索引等数据对象。
-
●3.3索引的建立和管理
索引的建立、修改和删除
-
●3.4数据查询(概述)
数据查询是数据库的核心操作。SQL提供了SELECT语句进行数据查询。本节对数据的查询从基本的单表查询、聚集函数、分组与排序、多表连接查询、嵌套查询、集合查询和基于派生表的查询几个方面进行讲授。
-
●3.5数据查询(单表查询:基本单表查询)
基本的单表查询操作
-
●3.6数据查询(单表查询:复合条件、排序和分组)
复杂条件的构造,查询排序以及分组查询。
-
●3.7数据查询(连接查询)
多个表的连接查询。
-
●3.8数据查询(嵌套查询-1)
嵌套查询。
-
●3.9数据查询(嵌套查询-2)
带有EXISTS谓词的嵌套查询。
-
●3.10数据查询(集合查询和基于派生表的查询)
集合查询和基于派生表的查询。
-
●3.11数据更新
数据更新操作有三种:向表中添加若干行数据、修改表中的数据和删除表中的若干行数据。在SQL中有相应的三类语句。
-
●3.12空值的处理
空值(NULL)是“不知道”或“不存在”或“无意义”的值,SQL语言中允许某些元组的某些属性值在一定情况下取空值。空值是一个特殊的值,对关系运算带来特殊的问题,需要做特殊的处理。
-
●3.13视图(一)
视图是一个从基本表中导出的虚表,其中只存放定义,而不存放数据。本小节讲述视图的定义。
-
●3.14视图(二)
视图是一个从基本表中导出的虚表,其中只存放定义,而不存放数据。本小节讲述视图的查询、更新和作用。
-
第四章数据库安全性
数据库的特点之一是由数据库管理系统提供统一的数据保护功能来保证数据的安全可靠和正确有效。数据库的数据保护主要包括数据的安全性和完整性。本章介绍数据库的安全性。所谓数据库的安全性是指保护数据库以防止不合法使用所造成的数据泄露、更改或破坏。
-
●4.1数据库安全性概述
数据库系统中由于大量数据集中存放,而且为众多用户共享,因此安全性问题更加迫切。
-
●4.2数据库安全性控制(上)
与数据库存取控制相关的安全性控制。本小结讲述用户身份鉴别、存取控制、自主存取控制方法。
-
●4.3数据库安全性控制(下)
与数据库存取控制相关的安全性控制。本小结讲述授权、角色和强制存取控制方法。
-
●4.4其它安全性控制机制
视图机制、审计以及数据加密等安全性机制。
-
第五章数据库完整性
数据库的完整性是指数据库中数据的正确性(即数据是复合现实世界语义、反应当前实际情况的)和相容性(数据库同一对象在不同关系表中的额数据是复合逻辑的)。为了维护数据库的完整性,数据库管理系统必须提供定义完整性约束条件的机制、完整性检查的方法以及进行违约处理。
-
●5.1实体完整性和参照完整性
实体完整性和参照完整性约束的定义、检查和违约处理。
-
●5.2用户定义的完整性和约束命名
用户定义的完整性约束的定义、检查和违约处理。完整性约束命名。
-
●5.3触发器
触发器是用户定义在关系表上的一类由事件驱动的特殊过程。
-
第六章关系数据理论
针对一个具体的问题,应该如何构造一个适合于它的数据库模式,即应该构造几个关系模式,每个关系有哪些属性构成等。这是一个数据库逻辑结构设计的问题。换句话说,对于前面学习中我们见到的数据库模式,为什么要这样构造?所有数据都放在一个数据表中不行吗?带着这样的疑问,人们经过研究,形成了目前数据库逻辑设计的一个有力的工具——关系规范化理论。
-
●6.1规范化问题的提出
规范程度不高的关系可能存在数据修改、插入和删除方面的异常。
-
●6.2关系规范化(一)
利用规范化理论中的相关概念和原理对关系进行规范化,解决关系存在的问题。本小节讲述规范化的基本概念。
-
●6.3关系规范化(二)
利用规范化理论中的相关概念和原理对关系进行规范化,解决关系存在的问题。本小节讲述函数依赖问题。
-
●6.4关系规范化(三)
利用规范化理论中的相关概念和原理对关系进行规范化,解决关系存在的问题。本小节讲述多值依赖问题。
-
第七章数据库设计
数据库设计的目标是按照应用要求,设计数据库的各级模式并建立数据库,这是数据库应用系统设计的一部分。具体地讲就是对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。
-
●7.1数据库设计概述
数据库设计的基本步骤和工作。
-
●7.2需求分析
分析用户的需求。需求分析是数据库设计的起点,其结果是否准确反映用户的实际要求将直接影响到后续步骤。
-
●7.3概念结构设计
根据需求分析的结果,抽象为信息结构(即概念模型),一般使用E-R模型来表示。
-
●7.4逻辑结构设计
概念模型是独立于具体的数据模型的。逻辑结构设计的任务时把概念模型设计阶段的E-R图转换为选用的数据库管理系统产品支持的数据模型相符合的逻辑结构。
-
●7.5物理结构设计和数据库维护与实施
为一个给定的逻辑数据模型选取最适合应用要求的物理结构,即设计数据库在物理设备上的存储结构和存取方法。数据库物理设计完成之后,就可以进行调试,组织数据入库,进行实际的部署实施。
-
第八章数据库恢复技术
事务是一系列对数据库的操作,是数据库应用程序的基本逻辑单元。数据库的事务处理处理技术主要包括数据库恢复技术和并发控制技术,这是数据库管理系统的重要组成部分。计算机系统的多种故障都可能导致数据库的事务收到破坏,从而影响数据库中数据的正确性。数据库恢复就是把数据库从错误状态恢复到某一已知的正确状态的功能。
-
●8.1事务、故障和数据库恢复概述
事务的基本概念,事务的ACID特性。数据库故障的类型及其对数据库的影响。数据库恢复的基本概念。
-
●8.2恢复的实现技术
恢复机制设计的两个关键问题:建立冗余数据,利用冗余数据实施数据库恢复。
-
●8.3恢复策略
利用数据库后备副本和日志文件,针对不同的故障类型,采用不同的策略和方法进行数据库恢复。
-
●8.4其它恢复技术
具有检查点的数据库恢复技术。数据库镜像。
-
第九章并发控制
数据库是可以为多个用户共享,当多个用户并发的存取数据库时就会产生多个事务同时存取同一个数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。并发控制机制是衡量数据库管理系统性能的重要标志之一。
-
●9.1并发控制概述
事务是并发控制的基本单位。并发操作可能破坏事务的隔离性和一致性,从而带来数据的不一致问题。
-
●9.2封锁协议
封锁是实现并发控制的重要技术。在运用基本的X锁和S锁对数据对象加锁时,还要从何时申请何种类型的锁、持锁时间、何时释放等方面约定一些规则,形成不同的封锁协议,解决相应的问题。
-
●9.3事务的并发调度
数据库管理系统对并发事务的不同调度可能会产生不用的结果,要保证调度结果的正确性。
-
●9.4多粒度封锁
封锁对象的大小称为封锁粒度。通过不同粒度对象的封锁,实现系统的并发度和并发控制的开销之间的平衡。