- Access数据库应用教程(2010版)
- 邓海
- 5697字
- 2025-02-25 08:48:57
1.1 数据库系统概述
数据库系统(Database System,DBS)是为适应数据处理的需要而发展起来的一种较为理想的数据处理系统,是存储介质、处理对象和管理系统的集合体。计算机的高速处理能力和大容量存储器提供了实现数据管理自动化的条件。
数据库系统的出现是计算机应用的一个里程碑,它使得计算机应用从以科学计算为主转向以数据处理为主,并从而使计算机得以在各行各业普遍使用。
1.1.1 信息、数据与数据处理
数字化是人类社会21世纪文明的显著特征。所谓数字化就是用二进制数0和1编码来表达和传输一切信息的一种综合性技术,即文本、声音、图形、图像和视频等各种信息全都变成数字信号,在同一种综合业务网中进行传输。信息的数字化为信息时代提供了一个强有力的技术手段。
1. 信息
在人类社会活动中,存在着各种各样的事物,每种事物都有其自身的表现特征和存在方式,以及与其他事物的相互联系、相互作用。
信息是对现实世界中各种事物的存在方式、运动状态或事物间联系形式的反映的综合。通俗地讲,信息是经过加工处理并对人类客观行为产生影响的数据。
信息是有价值的,是可以被感知的。信息可以通过载体传递,可以通过信息处理工具进行存储、加工、传播、再生和增值。在信息社会中,信息一般可与物质或能量相提并论,它是一种重要的资源。
2. 数据
数据是记录现实世界中各种信息并可以识别的物理符号,是信息的载体,是信息的具体表现形式,也是数据库中存储的基本对象。
说起数据,人们首先想到的是数字,其实数字只是数据的一种。为了描述客观事物而用到的数字、字符及所有能输入到计算机中并能被计算机处理的符号都可以看作是数据。
数据表现信息的形式是多种多样的,不仅有数字、文字符号,还有图形、图像、音频和视频文件等。用数据记录同一信息可以有不同的形式,信息不会随着数据形式的不同而改变其内容和价值。例如,一个城市某天的天气预报是一条信息,而描述该信息的数据形式可以是文字、图像或声音等。
在用数据符号表示信息的实际应用中,可将数据定义成多种类型。常见的有两种类型,一种是数值型数据,即对客观事物进行定量记录的符号,如数量、年龄、价格和角度等;另一种是字符型数据,即对客观事物进行定性记录的符号,如姓名、单位和地址等。此外,还有对客观事物进行形象特征和过程记录的符号,如图形、图像、声音和视频等多媒体数据。
数据与信息既有区别,又有联系。数据是用来表示信息的,是承载信息的物理符号;信息是加工处理后的数据,是数据所表达的内容。值得注意的是,信息和数据这两个概念有时可以不加区别地使用,例如信息处理也可以说成是数据处理。
3. 数据处理
数据处理是指利用计算机将各种类型的数据转换成信息的过程。广义地讲,它包括对数据的收集、整理、存储、传输、检索、分类、加工或计算、打印各类报表或输出各种需要的图形等一系列活动。狭义地讲,它是指对所输入的数据进行加工整理。数据处理的目的是从收集的大量原始数据中抽取和推导出有价值的信息,作为决策的依据。
可以用一个等式来简单地表示信息、数据与数据处理之间的关系:信息=数据+数据处理。
在数据处理的一系列活动中,数据收集、存储、传输、检索和分类等操作是基本环节,这些基本环节统称为数据管理。
1.1.2 数据管理技术的发展
数据管理技术随着计算机硬件(主要是外存储器)、软件技术和计算机应用范围的发展而不断发展,大致经历了人工管理、文件系统、数据库系统和新型数据库系统等几个阶段。
1. 人工管理阶段
20世纪50年代中期以前,计算机主要用于科学计算。在这一阶段,计算机硬件方面,外存储器只有卡片机、纸带机和磁带机,没有磁盘等直接存取的外存储器;软件方面,只有汇编语言,还没有操作系统软件和数据管理软件支持,数据完全由程序设计人员有针对性地设计程序进行管理,数据处理方式基本是批处理。这一阶段数据管理的特点如下。
(1)数据不保存
人工管理阶段处理的数据量较少,一般不需要将数据长期保存,仅仅在计算某一个项目时将数据随应用程序一起输入,计算后将结果输出并退出,对数据不做长期保存。若要再次进行计算,则需重新输入数据和应用程序。
(2)由应用程序管理数据
系统中没有专门的软件对数据进行管理,数据需要由应用程序自行管理,每个应用程序不仅要规定数据的逻辑结构,而且要设计物理结构(包括存储结构、存取方法、输入/输出方式等),程序设计任务繁重。
(3)数据和程序不具有独立性
数据是作为输入程序的组成部分,数据和程序同时提供给计算机运算使用,一组数据对应一个程序,这就使得程序依赖于数据。当数据的逻辑结构或存储结构发生改变时,必须修改对应的应用程序,这就进一步加重了程序设计的负担。
(4)数据不能共享
由于数据是依赖于具体的应用程序而存在的,不同应用的数据之间是相互独立、彼此无关的。即使两个应用程序使用的是完全相同的一组数据,这组数据也必须在各自的应用程序中分别定义和输入,无法共享,造成数据冗余。
人工管理阶段应用程序与数据之间的关系如图1-1所示。

图1-1 人工管理阶段应用程序与数据之间的关系
2. 文件系统阶段
20世纪50年代中期到60年代中期,计算机的应用范围从科学计算扩大到信息管理。在计算机硬件方面,出现了磁鼓、磁盘等直接存取数据的外部存储设备。在软件方面,已经有了高级语言和操作系统。操作系统中的文件系统可以帮助用户将所需数据以文件的形式存储并对其进行各种处理。数据处理方式有批处理,也有联机实时处理。
在文件系统阶段,程序与数据有了一定的独立性,程序与数据分开存储,有了程序文件和数据文件的区别。数据文件可以长期保存在外存储器上多次存取,如进行查询、修改、插入和删除等操作。这一阶段数据管理的特点如下。
(1)数据可长期保存
数据以独立数据文件的形式长期保存在磁鼓或磁盘等外部存储介质上,数据文件可以被应用程序重复使用。
(2)由文件系统管理数据
数据存放在相互独立的数据文件中,由文件系统统一管理。应用程序通过文件系统对数据进行操作。程序员可以将更多的精力集中在算法上,而不必过多地考虑物理细节。
(3)数据独立性差
文件系统中的数据文件依赖于应用程序的存在而存在,程序和数据之间的依赖关系并未根本改变,数据与程序之间仍缺乏独立性。
(4)数据共享性差、冗余度大
在文件系统中,文件是面向应用的,即一个文件和一个应用程序基本上是一一对应的,这就不便于数据的共享,同时增加了数据的冗余,浪费了存储空间。
文件系统阶段应用程序与数据之间的关系如图1-2所示。

图1-2 文件系统阶段应用程序与数据之间的关系
3. 数据库系统阶段
进入20世纪60年代后期,计算机的软、硬件得到了进一步的发展,特别是出现了大容量磁盘。同时,计算机应用于数据处理的范围越来越广,需要计算机管理的数据量急剧增长,对数据共享的需求日益增强,仅仅基于文件系统的数据管理方法已无法适应开发应用系统的需要。
为了有效管理和存取大量的数据资源,解决数据与应用程序的独立性问题,实现数据的统一管理,达到数据共享的目的,出现了数据库技术。
数据库(Database,DB)是共享数据的集合,它不仅包括数据本身,而且包括数据之间的联系。数据库中的数据不是面向某一特定的应用,而是面向多种应用,可以被多个用户、多个应用程序共享。其数据结构独立于使用数据的程序,对于数据的增加、删除、修改及检索等由系统统一进行控制。
为数据库的建立、使用和维护而配置的软件称为数据库管理系统(Database Management System,DBMS),它是在操作系统支持下运行的。目前较为流行的数据库管理系统有Oracle、SQL Server和Access等。
这一阶段数据管理的特点如下。
(1)数据结构化
采用数据模型表示复杂的数据结构,数据模型不仅描述数据本身的特征,还可以描述数据之间的相互关系。这样的数据不再面向特定的某个或多个应用,而是面向整个应用系统。
(2)数据共享性高
数据库系统从整体角度来看待和描述数据,面向整个系统,减少了数据的冗余,节约存储空间,缩短存取时间,避免数据之间的不相容和不一致;面向不同的应用,存取相应的数据库的子集。
(3)数据独立性高
数据的物理存储结构与用户看到的逻辑结构可以有很大的差别。用户只是用简单的逻辑结构来操作数据,无需考虑数据在存储器上的物理位置与结构。数据的存储和使用数据的程序彼此独立,数据存储结构的变化尽量不影响用户对程序的使用,用户对程序的修改也不要求数据结构做大的改动。
(4)有统一的数据控制功能
数据库作为用户与应用程序的共享资源,对数据的存取往往是并发的,即多个用户同时使用同一个数据库。数据库管理系统必须提供并发控制功能、数据的安全性控制功能和数据完整性控制功能。
在数据库管理系统支持下的应用程序与数据之间的关系如图1-3所示。

图1-3 数据库系统阶段应用程序与数据之间的关系
4. 新型数据库系统阶段
随着计算机硬件和软件的不断改善,数据处理应用领域持续扩大,数据库技术的发展先后经历了层次数据库、网状数据库和关系数据库。层次数据库和网状数据库可以看作是第一代数据库系统,关系数据库可以看作是第二代数据库系统。
自20世纪70年代提出关系数据模型和关系数据库后,数据库技术得到了蓬勃发展,应用也越来越广泛。但随着应用的不断深入,占主导地位的关系数据库系统已不能满足新的应用领域的需求。例如,在实际应用中,除了需要处理数值、字符数据的简单应用之外,还需要存储并检索复杂的复合数据(如集合、数组、结构)、多媒体数据、计算机辅助设计绘制的工程图纸和地理信息系统提供的空间数据等,对于这些复杂数据,关系数据库无法实现对它们的管理。
到了20世纪80年代,数据库技术与其他软件技术加速融合,新的、更高一级的数据库技术相继出现并得到长足的发展,分布式数据库系统、面向对象数据库系统和多媒体数据库系统等新型数据库系统应运而生。
分布式数据库系统是数据库技术与计算机网络技术、分布式处理技术相结合的产物。分布式数据库系统是系统中的数据物理上分布在计算机网络的不同结点,但逻辑上属于一个整体的数据库系统。分布式数据库系统不同于将数据存储在服务器上供用户共享存取的网络数据库系统,它不仅能支持局部应用(访问本地数据库),而且能支持全局应用(访问异地数据库)。
面向对象数据库系统是将面向对象的模型、方法和机制,与先进的数据库技术有机地结合而形成的新型数据库系统。它从关系模型中脱离出来,强调在数据库框架中发展类型、数据抽象、继承和持久性。面向对象数据库系统的基本设计思想是:一方面把面向对象的程序设计语言向数据库方向扩展,使应用程序能够存取并处理对象;另一方面扩展数据库系统,使其具有面向对象的特征,提供一种综合的语义数据建模概念集,以便对现实世界中复杂应用的实体和联系建模。
多媒体数据库系统是数据库技术与多媒体技术相结合的产物。随着信息技术的发展,数据库应用从传统的企业信息管理扩展到计算机辅助设计(CAD)、计算机辅助制造(CAM)、办公自动化(OA)和人工智能(AI)等多种应用领域。这些领域中要处理的数据不仅包括传统的数值、字符等格式化数据,还包括大量多种媒体形式的非格式化数据,如图形、图像和声音等。这种能存储和管理多种媒体的数据库称为多媒体数据库。现有数据库管理系统无论从模型的语义描述能力、系统功能、数据操作,还是存储管理、存储方法上,都不能适应非格式化数据的处理要求。综合程序设计语言、人工智能和数据库领域的研究成果,设计支持多媒体数据管理的数据库管理系统已成为数据库领域中一个新的、重要的研究方向。
新型数据库系统为数据库技术的发展带来了一个又一个新浪潮,但对于中、小数据库用户来说,很多高级的数据库系统的专业性要求太高,通用性受到制约。而基于关系模型的关系数据库系统功能的扩展与改善,面向对象关系数据库、数据仓库、Web数据库和嵌入式数据库等数据库技术的出现,构成了新一代数据库系统的发展主流。
1.1.3 数据库系统的组成
数据库系统是指引入了数据库技术的计算机系统,是一个具有管理数据库功能的计算机软、硬件综合系统。它可以实现有组织、动态地存储大量相关数据,提供数据处理和信息资源共享服务。数据库系统一般由数据库、数据库管理系统、数据库应用系统、数据库管理员和用户组成。通常在不引起混淆的情况下将数据库系统简称为数据库。
1. 数据库
顾名思义,数据库是存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据按一定的格式存放。
将数据按一定的数据模型组织起来,使其具有较小的冗余度、较高的独立性和易扩展性,并可为一定范围内的多个用户共享,这种数据的集合称为数据库。例如,将图书馆的读者、图书等数据有序地组织起来存储在计算机磁盘上,可以构成一个与图书管理有关的数据库。
简而言之,数据库是长期存储在计算机内的有组织的、可共享的数据集合。数据库不仅要反映数据本身的内容,还要反映数据之间的联系。
2. 数据库管理系统
数据库管理系统是位于用户与操作系统之间,用于建立、使用和维护数据库的系统软件。它是数据库系统的核心组成部分,一般具有以下功能。
(1)数据定义功能
数据库管理系统提供了数据定义语言(Data Definition Language,DDL),用户通过DDL可以方便地对数据库中的数据对象进行定义。例如,通过CREATE TABLE命令可以定义表结构。
(2)数据操纵功能
数据库管理系统提供了数据操纵语言(Data Manipulation Language,DML),用于实现对数据库的基本操作。例如,对数据库表中数据的查询、插入、修改和删除。
(3)数据管理和控制功能
数据库管理系统提供了数据控制语言(Data Control Language,DCL),用于保证数据库的安全性、完整性、多用户对数据的并发操作以及发生故障时的系统恢复。例如,对数据库表实施参照完整性、为数据库设置密码和定期对数据库进行备份。
3. 数据库应用系统
数据库应用系统(Database Application System,DBAS)是系统开发人员为了解决某一类信息处理的实际需求而利用数据库系统资源和数据库系统开发工具开发出来的软件系统。例如,利用Access开发的图书管理系统、教务管理系统、水费管理系统和超市销售系统等。这些系统都是以数据库为基础,通过数据库管理系统来访问的计算机应用系统。
4. 数据库管理员和用户
数据库管理员(Database Administrator,DBA)是数据管理机构的专门人员,他们负责对整个数据库系统进行总体控制和维护,保证数据库系统的正常运行。
用户是指通过应用系统的用户界面使用数据库的人员,他们一般对数据库知识了解不多。