数据库原理与应用技术,学习笔记
数据库原理与应用技术
苗雪兰,宋歌编著
学习者:何
◆ 第1章 数据库系统概述
>> 数据库是数据管理的新手段和技术。
>> 信息就是新的、有用的事实和知识。
>> 数据(Data)是用于承载信息的物理符号。
>> 数据不等于信息,数据只是信息表达方式中的一种
>> 数据处理是指对数据的收集、组织、整理、加工、存储和传播等工作。
>> 数据管理是其他数据处理的核心和基础。
>> 数据库(DataBase,DB)是一个按数据结构来存储和管理数据的计算机软件系统。
>> 数据库的数据共享性表现
>> 数据库系统应由计算机硬件、数据库、数据库管理系统、数据库应用系统和数据库管理员五部分构成
>> 数据库设计的主要目的是:在数据库管理系统的支持下,按照应用要求为某一部门或组织设计一个良好的、使用方便的、效率较高的数据库及其应用系统
>> 数据库管理系统主要提供四方面的功能:数据定义,数据操纵,数据库的建立和维护,数据库的运行管理
>> 数据库的数据模式由外模式、模式和内模式三级模式构成
>> 数据库的三级模式是指逻辑模式、外模式、内模式
◆ 第2章 信息模型与数据模型
>> 数据库系统的核心是数据模型
>> 信息的三种世界是指现实世界、信息世界和计算机世界
>> 信息模型是对信息世界的管理对象、属性及联系等信息的描述
>> 对象是实体集遵循其实体型抽象的结果
>> 属性(Attribute)是实体的某一方面特征的抽象表示
>> 码(Key)也称为关键字,能够唯一标识一个实体
>> 属性的取值范围称为属性的域
>> 信息模型是对信息世界的建模,信息模型应当能够全面、准确地描述出信息世界中的基本概念
>> 数据模型具有数据结构、数据操作和完整性约束条件三要素
>> 数据库领域最常用的数据模型有三种:层次模型(Hierarchical Model)、网状模型(Network Model)和关系模型(Relational Model)
>> 层次模型是数据库系统中最早出现的数据模型,层次数据库系统采用层次模型作为数据的组织方式
>> 网状模型:① 有一个以上的结点没有双亲;② 结点可以有多于一个的双亲
>> 层次模型的主要优点是:数据模型本身比较简单;系统性能优于关系模型和网状模型;能够提供良好的完整性支持。层次模型的主要缺点是:在表示非层次性的联系时,只能通过冗余数据(易产生不一致性)或创建非自然的数据组织(引入虚拟结点)来解决;对插入和删除操作的限制比较多;查询子女结点必须通过双亲结点;由于结构严密,层次命令趋于程序化
>> 网状数据模型的主要优点是:能够更直接地描述现实世界,一个结点可以有多个双亲,允许复合链,具有良好的性能,存取效率比较高。网状数据模型的缺点主要是:结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于用户掌握;DDL(数据定义语言)和DML(数据操纵语言)复杂,用户不容易使用;由于记录之间的联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此用户必须了解系统结构的细节后才能实现其数据存取,程序员要为访问数据设置存取路径,加重了编写应用程序的负担
>> 关系操作主要包括数据查询和插入、删除、修改数据
>> 在关系数据库的物理组织中,关系以文件形式存储
>> 关系模型与非关系模型比较
与非关系数据模型相比,关系数据模型具有下列特点:
① 关系数据模型建立在严格的数学基础之上。关系及其系统的设计和优化有数学理论指导,因而容易实现且性能好。
② 关系数据模型的概念单一,容易理解。关系数据库中,无论实体还是联系,无论是操作的原始数据、中间数据还是结果数据,都用关系表示。这种概念单一的数据结构,使数据操作方法统一,也使用户易懂易用。
③ 关系数据模型的存取路径对用户隐蔽。用户根据数据的逻辑模式和子模式进行数据操作,而不必关心数据的物理模式情况,无论计算机专业人员还是非计算机专业人员使用起来都很方便,数据的独立性和安全保密性都较好。
④ 关系模型中的数据联系是靠数据冗余实现的。关系数据库中不可能完全消除数据冗余。由于数据冗余,使得关系的空间效率和时间效率都较低。
>> 面向对象数据库系统支持面向对象数据模型(简称OO模型)
>> 对象是由一组数据结构和在这组数据结构上的操作程序代码封装起来的基本单位。
◆ 第3章 数据库设计方法和实例
>> 数据库系统的设计包括数据库设计和数据库应用系统设计两方面的内容。数据库设计是设计数据库的结构特性,即为特定应用环境构造出最优的数据模型;数据库应用系统设计是设计数据库的行为结构特性,并建立能满足各种用户对数据库应用需求的功能模型。
>> 数据库系统的设计包括结构特性设计和行为特性设计两方面的内容。
>> 数据库系统的设计主要有需求分析、概念设计、逻辑设计和物理设计
>> 数据库系统设计的内容主要有:数据库的结构特性设计,数据库的行为特性设计,数据库的物理模式设计。
>> 数据库的结构特性是指数据库的逻辑结构特征。
>> 数据库的行为特性设计是指确定数据库用户的行为和动作,设计出数据库应用系统的系统层次结构、功能结构和系统数据流程图,并确定数据库的子模式。
>> 数据库的物理模式设计是根据库结构的动态特性(即数据库应用处理要求),在选定的数据库管理系统(DBMS)环境下,把数据库的逻辑结构模型加以物理实现,从而得出数据库的存储模式和存取方法。
>> 数据库系统设计中,结构特性设计和行为特性设计必须相结合才能达到其设计目标。
>> 数据库设计要经过以下6个阶段。
① 需求分析阶段
② 概念结构设计阶段
③ 逻辑结构设计阶段
④ 物理结构设计阶段
⑤ 数据库实施阶段
⑥ 试运行和维护阶段
>> 数据库设计过程中,应注意以下问题。
① 需求分析阶段时,设计者的中心工作是弄清并综合各个用户的应用需求。
② 概念结构设计阶段时,设计者要将应用需求转换为与计算机硬件无关的、与各个数据库管理系统产品无关的信息模型(即E-R图)。
③ 逻辑结构设计阶段时,要完成数据库的逻辑模式和外模式的设计工作,即系统设计者要先将E-R图转换成具体的数据库产品支持的数据模型,形成数据库逻辑模式,然后根据用户处理的要求、安全性的考虑建立必要的数据视图,形成数据的外模式。
④ 物理结构设计阶段时,要根据具体使用的数据库管理系统的特点和处理的需要进行物理存储安排,并确定系统要建立的索引,得出数据库的内模式。
>> 信息模型设计是将系统需求分析得到的用户需求进一步抽象为信息模型结构。
>> 信息模型的设计可分为两步:第一步是抽象数据并设计局部视图;第二步是集成局部视图,得到全局的信息模型。
>> 数据抽象的三种基本方法是分类、聚集和概括。
>> 分E-R图之间的冲突主要有三类:属性冲突、命名冲突和结构冲突。
>> 冗余数据是指可由基本数据导出的数据,冗余联系是可由其他联系导出的联系。
>> 信息模型向逻辑模型的转换过程分为三步进行:
(1)把信息模型转换成一般的数据模型。
(2)将一般的数据模型转换成特定的DBMS所支持的数据模型。
(3)通过优化方法将其转化为优化的数据模型。
>> 关系数据库物理设计的内容主要指选择存取方法和存储结构,包括确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。
>> 关系数据库常用的存取方法有索引方法、聚簇方法和HASH方法
>> 确定数据的存放位置和存储结构要综合考虑存取时间、存储空间利用率和维护代价三方面的因素。
>> 数据库的维护工作包括以下4项。
1.数据库的转储和恢复
2.数据库的安全性和完整性控制
3.数据库性能的监督、分析和改造
4.数据库的重组织与重构造
>> 数据库系统分为桌面型数据库系统、两层结构的数据库系统和多层结构的数据库系统
>> DSN有用户DSN、系统DSN和文件DSN三种。用户DSN只对设置它的用户可见,只能在设置它的计算机上使用。系统DSN对系统中的所有用户都是可见的。文件DSN是存放DSN的配置信息的文件。
>> 数据库应用系统设计与实现要分需求分析、系统设计、建立数据库、程序设计和编程与调试
>> 数据库设计的步骤是:根据系统分析建立信息模型;将数据库的信息模型转换为数据模型;进行规范化处理,使数据模型满足BC范式。
◆ 第4章 关系模型及关系操作
>> 关系数据库中的关系可以分为基本表、视图表和查询表三种类型。
>> 关系数据库中的基本表具有以下6个性质。
(1)同一属性的数据具有同质性
(2)同一关系的属性名具有不能重复性
(3)关系中的列位置具有顺序无关性
(4)关系具有元组无冗余性
(5)关系中的元组位置具有顺序无关性
(6)关系中每一个分量都必须是不可分的数据项
>> 关系模型中有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。
>> 关系代数所使用的运算符包括4类:集合运算符、专门的关系运算符、比较运算符和逻辑运算符。
>> 运算对象、运算符和运算结果是关系运算的三大要素。