Access数据库基础与应用标准教程(实战微课版)
上QQ阅读APP看书,第一时间看更新

1.1 数据库概述

数据库是一门综合性技术,涉及领域广,如操作系统、数据结构、算法设计和程序设计等。所以在计算科学中会将数据库技术作为专门的学科进行研究和学习。

1.1.1 数据库及其发展

数据库是一种用于收集和组织信息的工具。利用数据库,可以存储有关联系人的信息、货物订单、订购产品的详细信息,或其他任何内容的信息。在关系数据库中,数据库是指与系统相关的所有数据、关系、索引、规则、约束、触发器和存储过程等。

通常来说,数据库系统由计算机软件、硬件资源组成,能够动态存储大量关联数据,从而方便多用户访问。数据库与文件系统的重要区别是数据的充分共享、交叉访问以及应用程序的高度独立性。

数据库技术的发展主要经历了人工管理阶段、文件系统阶段和数据库系统三个阶段。

1.人工管理阶段

在20世纪50年代中期以前,计算机主要用于科学计算。当时的硬件状况是外存只有纸带、卡片、磁带,没有磁盘等直接存取的存储设备。从软件看,没有操作系统,没有管理数据的软件,数据处理方式是批处理。在人工管理阶段,程序与数据之间的一一对应关系如图1-1所示。

图1-1

在人工管理阶段,数据管理的特点如下。

(1)数据不被保存

由于当时计算机主要用于科学计算,一般不需要将数据长期保存,只是在计算某一课题时将数据输入,用完就撤走。不仅对用户数据如此处置,对系统软件有时也是这样。

(2)应用程序管理数据

数据需要由应用程序自己管理,没有相应的软件系统负责数据的管理工作。应用程序中不仅要规定数据的逻辑结构,而且要设计物理结构,包括存储结构、存取方法、输入方式等,因此程序员负担很重。

(3)数据不能共享

数据是面向应用的,一组数据只能对应一个程序。当多个程序涉及某些相同的数据时,由于必须各自定义,无法互相利用、互相参照,因此程序与程序之间有大量的冗余数据。

(4)数据不具有独立性

数据的逻辑结构或物理结构发生变化后,必须对应用程序进行相应的修改,这就进一步加重了程序员的负担。

2.文件系统阶段

20世纪50年代后期到20世纪60年代中期,计算机的应用范围逐渐扩大,计算机不仅用于科学计算,还大量用于管理。这时硬件上已有了磁盘、磁鼓等直接存储设备。软件方面,操作系统中已有了专门的数据管理软件,一般称为文件系统。处理方式上不仅有了文件批处理,而且能够联机实时处理。文件系统阶段程序与数据之间的关系如图1-2所示。

图1-2

在文件系统阶段,数据管理的特点如下。

(1)数据可以长期保存

由于计算机大量用于数据处理,数据需要长期保留在外存上,并反复进行查询、修改、插入和删除等操作。

(2)由文件系统管理数据

由专门的软件即文件系统进行数据管理,程序和数据之间由软件提供的存取方法进行转换,使应用程序与数据之间有一定的独立性,程序员可以不必过多地考虑物理细节,而是将精力集中于算法。而且数据在存储上的改变不一定反映在程序上,大大减少了维护程序的工作量。

(3)数据共享性差

在文件系统中,一个文件基本上对应一个应用程序,即文件仍然是面向应用的。当不同的应用程序具有相同的数据时,也必须建立各自的文件,而不能共享相同的数据,因此数据的冗余度大,浪费存储空间。同时由于相同数据的重复存储、各自管理,给数据的修改和维护带来了困难,容易造成数据的不一致性。

(4)数据独立性低

文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。一旦数据的逻辑结构发生改变,就必须修改应用程序,修改文件结构的定义。而应用程序的改变,例如,应用程序改用不同的高级语言等,也将引起文件的数据结构的改变。因此数据与程序之间仍缺乏独立性。可见,文件系统仍然是一个不具有弹性的无结构的数字集合,即文件之间彼此是孤立的,不能反映现实世界事物之间的内在联系。

3.数据库系统阶段

20世纪60年代后期以来,计算机用于管理的规模更为庞大,应用越来越广泛,数据量急剧增长,同时多种应用、多种语言互相覆盖地共享数据集合的要求越来越强烈。这时硬件已有大容量磁盘,硬件价格下降,软件价格上升,为编制和维护系统软件及应用程序所需的成本相对增加。在处理方式上,联机实时处理要求更多。在这种背景下,以文件系统作为数据管理手段已经不能满足应用的需求。于是为了解决多用户、多应用共享数据的需求,使数据为尽可能多的用户服务,就出现了数据库技术,出现了统一管理的专门软件系统——数据库管理系统。在数据库系统阶段程序与数据之间的对应关系如图1-3所示。

图1-3

与传统的文件管理阶段相比,现代的数据库管理系统阶段具有下列特点。

(1)使用复杂的数据模型表示结构

在这种系统中,数据模型不仅描述数据表示的特征,而且还描述数据之间的联系。这种联系通过提供存取路径来实现。通过所有存取路径表示自然的数据联系,是数据库系统与传统的文件系统之间的本质区别。

(2)具有很高的数据独立性

数据的逻辑结构与实际存储的物理结构之间的差别比较大。用户可以使用简单的逻辑结构来操作数据,而无须考虑数据的物理结构,这种操作方式依靠数据库系统的中间转换。在物理结构改变时,尽量不影响数据的逻辑结构和应用查询。这时,就认为数据达到了物理数据的独立性。

(3)为用户提供方便的接口

在这种数据库系统中,用户可以非常方便地使用查询语言或使用程序命令操作数据库中的数据,也可以使用编程方式操作数据库。

(4)提供完整的数据控制功能

数据控制功能包括并发性、完整性、可恢复性、安全性和审计性等。并发性是指允许多个用户或应用程序同时操作数据库中的数据,而数据库依然保证为这些用户或应用程序提供正确的数据。完整性就是始终包含正确的数据。可恢复性是指在数据库遭到破坏之后,系统有能力把数据库恢复到最近某个时刻的正确状态。安全性是指只有指定的用户才能使用数据库中的数据和执行允许的操作。审计性是指系统可以自动记录所有对数据库系统和数据的操作,以便跟踪和审计数据库系统的所有操作。

(5)提高系统的灵活性

对数据库中数据的操作既可以以记录为单位,也可以以记录中的数据项为单位。

1.1.2 数据模型

数据模型(data model)也是一种模型,它是现实世界数据特征的抽象表现。由于计算机不能直接处理现实世界中的具体事物,因此人们必须事先把具体事物转换成计算机能够处理的数据,即首先要数字化,要把现实世界中的人、事、物、概念用数据模型这个工具来抽象、表示和加工处理。数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式架构,是现实世界的一种抽象模型。

在实现数据库管理的过程中,数据模型起着关键作用。整个数据库技术的发展是沿着数据模型的主线展开的。现有的数据库均是基于某种数据模型,了解数据模型的基本概念是学习数据库的基础。数据模型按不同的应用层次分为3种类型,分别是概念数据模型(conceptual data model)、逻辑数据模型(logic data model)和物理数据模型(physical data model)。

(1)概念数据模型

概念数据模型又称概念模型,是一种面向客观世界、面向用户的模型,与具体的数据库管理系统无关,与具体的计算机平台无关。人们通常先将现实世界中的事物抽象到信息世界,建立所谓的“概念模型”,然后再将信息世界的模型映射到机器世界,将概念模型转换为计算机世界中的模型。因此,概念模型是从现实世界到机器世界的一个中间层次。

(2)逻辑数据模型

逻辑数据模型又称逻辑模型,是一种面向数据库系统的模型,它是概念模型到计算机之间的中间层次。概念模型只有在转换成逻辑模型之后才能在数据库中表示。目前,逻辑模型的种类很多,其中比较成熟的有层次模型、网状模型、关系模型、面向对象模型等。这4种数据模型的根本别在于数据结构不同,即数据之间联系的表示方式不同。

 层次模型用“树结构”表示数据之间的联系。

 网状模型用“图结构”表示数据之间的联系。

 关系模型用“二维表”表示数据之间的联系。

 面向对象模型用“对象”表示数据之间的联系。

(3)物理数据模型

物理数据模型又称物理模型,它是一种面向计算机物理表示的模型,此模型是数据模型在计算机上的物理结构表示。

1.1.3 数据元素

数据元素是数据的基本单位。数据元素也称为元素、结点、顶点、记录。一个数据元素可以由若干个数据项(也可称字段、域、属性)组成。数据项是具有独立含义的最小标识单位。

为了加快访问数据库的速度,数据库都使用索引,类似于图书馆为图书建立的图书索引,使读者可以方便地查阅到所需要的图书。索引是一个独立的文件或表格(每个数据库处理的方式不同),在数据库的整个生命周期中,它一直存在,并得到相应的维护。

主键是表中一列或多列的组合,其值唯一标识了表中的一行记录。在数据表中,任意两条记录的主键不能具有相同的值。例如,在某个数据表中将“学号”字段当作数据表的主键。如果出现了相同的学号,将提示出错,因为系统不知道存取的究竟是哪一条记录的数据。假设把“姓名”字段设为主键,这就要求该班不能出现重名现象。但就实际情况来看,一个班中确实存在重名现象的可能,所以“姓名”字段不宜作为主键。

在浏览数据表时,我们常常将数据表按某种类型进行排序,例如,按姓氏拼音、出生年月等。这种操作即为排序。排序有正序、倒序之分,也可以几个条件组合排序。

1.1.4 数据和信息

数据是对现实世界中客观事物的符号表示,可以是数值数据,也可以是非数值数据,如声音、图像等。计算机中的数据是能输入计算机,并能被其处理的简单符号序列。

信息是现实世界事物的存在方式或运动状态的反映,或者可以理解为信息是一种已经被加工为特定形式的数据。信息的主要特征是信息的传递需要物质载体,信息的获取和传递需要消耗能量,信息可以感知,还可以存储、压缩、加工、传递、共享、扩散、再生和增值。

数据是信息的载体和具体表现形式,信息不随着数据形式的变化而变化。数据有文字、数字、图形、声音等表现形式。数据是存储在数据表中静态值的集合,信息是提取出来供人们浏览的组织起来的数据。