目录
第一章 数据库系统基本概念
1.1 数据管理技术的发展
人工管理阶段
本阶段计算机用于科学计算,尚无数据管理方面的软件,也没有文件的概念。计算时数据随程序输入内存,计算完毕自动释放。文件系统阶段
此阶段计算机开始用于信息管理,数据开始由操作系统的文件系统进行管理。文件系统提供读写方法,程序仅需文件名即可与数据打交道。但在数据的物理结构发生改变时,应用程序也要跟着修改,并且由于文件间缺乏联系,容易造成数据冗余和不一致等问题。数据库阶段
随着数据管理技术发展,数据库系统逐渐替代文件系统成为了主流的数据管理软件。数据库系统克服了文件系统的缺点,增强了数据间的联系性、独立性和便捷性。为数据的安全、完整、正确提供了系统的保障。数据库系统仍然是当今主要的数据管理软件。P4 高级数据库阶段
面向对象建模及开放数据库互连技术是本书介绍高级数据库阶段的内容。1.2 数据描述
概念设计中的数据描述
根据用户需求设计数据库的概念结构称为数据库的概念设计。 概念设计用到以下4个术语:- 实体:可以互相区别的事物,可以是具体对象,例如一辆汽车。也可以是抽象对象,例如一次借书。
- 实体集:性质相同的实体集合,例如所有男学生。
- 属性:实体的每一个特性,例如学生有学号、姓名、年龄、性别等属性。
- 实体标识符:能唯一标识实体的属性或属性集,例如学生的学号可以作为学生实体的标识符。
逻辑设计中的数据描述
逻辑设计是概念设计在DB中的具体实现,即前者是后者的实现方式。 最常用的一套术语:- 字段:实体的属性即为字段。字段的命名往往和属性相同,例如学生有学号,姓名,年龄,性别等。
- 记录:字段的有序集合,即多个有序的字段组成一条记录。例如学生记录由学号、姓名,年龄,性别等字段组成。
- 文件:同一类记录的结合称为文件。例如所有的学生记录组成了一个学生文件。
- 关键码:能唯一标识文件中每个记录的字段或字段集,例如学生记录中的学号字段。
物理设计中的数据描述
从访问速度由高到低分为:高速缓存、内存、快闪内存器、磁盘存储器、光盘存储器、磁带存储器。数据联系的描述
实体间的互相关系称为联系。 与联系有关的实体集个数称为元数。例如一个实体集之间的联系称为一元联系,两个实体集之间的联系称为二元联系...以此类推。二元联系的三种类型:
- 一对一联系(1:1):如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么则称实体集E1和E2的联系为“一对一联系”,记为“1:1”;
- 一对多联系(1:N):如果实体集E1中每个实体可以与实体集E2中任意个实体间有联系,而E2中每个实体至多和E1中一个实体有联系,那么称E1对E2的联系是“一对多联系”,记为“1:N”;
- 多对多联系(M:N):如果实体集E1中每个实体可以与实体集E2中任意个实体间有联系,反之亦然,那么称实体集E1和E2的联系是“多对多联系”,记为“M:N”。
1.3 数据抽象的级别
数据抽象的过程
模型(Model)是对现实世界的抽象,在数据库技术中使用数据模型对现实世界的数据进行抽象。 从现实世界的信息到数据库存储的数据,再到用户使用的数据就是一个逐步抽象的过程。 在数据库技术中根据数据抽象的级别定义了四种模型:概念模型、逻辑模型、外部模型和内部模型。这四种模型定义如下:
- 表达用户需求的模型称为“概念模型”;
- 表达计算机实现的模型,称为“逻辑模型”;
- 表达用户使用观点的模型,称为“外部模型”;
- 表达DB物理结构的模型,称为“内部模型”。 这四种模型关系如下图所示:
数据库设计过程具体步骤如下:
第一步:根据用户需求设计概念模型; 第二步:根据转换规则把概念模型转换为逻辑模型; 第三步:根据用户各业务单元的特点设计不同的外部模型供程序员使用; 第四步:数据库实现时,根据逻辑模型设计内部模型。 一般,上述第一步称为DB的概念设计,第二步和第三步则称为DB的逻辑设计,而第四步称为DB的物理设计。概念模型
概念模型从用户需求出发进行数据建模。实体联系(ER)模型是概念模型的主要表达方式。ER模型通过ER图来表示。逻辑模型
逻辑模型从数据库实现的观点出发对数据进行建模。 逻辑模型主要有层次、网状和关系模型。关系模型实现最简单且是目前主流使用的模型。外部模型
根据不同业务单元的特点,设计不同的外部模型。内部模型
内部模型又称为物理模型,使用关系模型设计的DB其物理模型由内部自主实现。三层模式和两级映像
用户(值应用程序等操作DB的终端)到数据库之间的数据结构有三个层次:外模式、逻辑模式和内模式。这三个层次间有两级的映像,即外模式和逻辑模式的映像和逻辑模式与内模式的映像。1.4 数据库管理系统(DBMS)
数据库系统中对数据进行管理的软件系统称为数据库管理系统即DBMS。
DBMS工作示意图:DBMS工作流程:
- 接受用户的数据请求;
- 将数据请求转换成复杂的机器代码;
- 实现对数据库的操作;
- 从数据库的操作中接受查询结果;
- 对查询结果进行格式转换;
- 将处理结果返回给应用程序。
1.5 数据库系统(DBS)
DBS是采用了数据库的计算机系统,他是数据库、硬件、软件和数据库管理员的集合体。