background image

数据的操纵和检索

——综合数据库管理系统

    到目前为止,我们集中讨论了传统的文件处理。此处,文件是作为一个独立的逻辑实体
来处理的,而且通常与某个特定的业务领域相联系。为了把业务上相近的那些部门的文件综
合在一起,必须预先排序记录和合并文件。这样做可能耗费大量的时间,有时甚至是不可能
实现的。
    通常,文件是为了满足特定业务领域某部门的专门需要而设计的,如果某部门想使用保
存在一个文件上的部分数据,而该文件是另一部门为自己使用而设计的,那么他们必须抽
取这些数据并重新整理后才能使用。大多数部门总是宁愿建立和保持和一个类似

(而不同)的

文件以更好地满足自己的使用要求,而不愿兼顾其他部门的业务需要。这样做的结果形成了
大量的带有重复数据的文件。前面的例子中已经提到,某所大学就保存了

75 个独立的计算

机文件,而每个文件中都包含有学生记录。每当一个学生结婚了或者改换了住处时,则必须
修改

75 个文件。

    数据的冗余会使成本提高,而设计一个综合的资源共享数据库则可以把数据冗余度降低
到最小程度。综合的资源共享数据库把公司看作一个整体来提供服务,而不只是为公司某特
殊部门服务。利用数据库管理系统

(DBMS)软件就可能实现一个综合的数据库。

早在

70 年代初期就出现了 DBMS 技术,但是直到 70 年代末期仍未得到普遍的接受。

早期的

DBMS“软件包”效率不高,实际上比传统的文件处理的要求更高的硬件能力。目前

DBMS 对硬件的要求已经降低了,甚至在小型计算机系统上也能运行 DBMS 软件,造成推
迟接受和实现

DBMS 技术的主要原因可能是信息服务人员缺乏专门的知识,而且用户管理

人员又不愿合作和支持建立一个共享的数据库。目前对于设计和运行

DBMS 软件已经有了

广泛的了解,而且部分用户管理人员已经认识到应该把信息作为一个公司的资源来看待。

    数据库环境的好处

    1.经济上的好处。通过先进的数据结构技术,DBMS 提供了最小化数据冗余度的可能性。
当然,为了提高处理效率,即使有了

DBMS 帮助,有时还需要在共享的数据库中保留一定

的重复数据。由于减少了数据的冗余度,从而也简化了收集和更新数据的过程。就前面的例
子而言,只需要在一处

(数据库中)更新学生地址就可以了。

    2.数据库技术也给信息服务专业人员带来的好处。综合资源共享数据库为系统分析员打
开了崭新的大门。数据库能向系统分析员提供传统文件所不能提供的信息。由于有了
DBMS,就更容易得到数据,因此使程序设计任务要比原先更为简单。此外,数据是独立于
程序的。这意味着用户管理人员可以增加数据库中的数据、修改库中的现有数据或者从库中
删除数据,这些并不影响现有的程序,而在过去则需要测试和修改几十个

(有时几百个)程

序。当然,数据库管理系统还有其它重要的优点,但是这些已超出本书的范围。
    3.信息方面的好处。一个综合资源共享数据库能以有序的方式提供一种满足信息要求的
结构。实际上,数据库是能够充分利用公司信息资源的唯一工具。由于数据库和

DBMS 在产

生报表方面提供了极大的灵活性,因此,也给决策过程带来了同样的灵活性。

4.DBMS 软件在支持联机系统方面是特别有价值的。共享数据库不仅可供多个用户存

取而且还特别能反映出数据的当前状态。对于许多查询来说,及时性是很关键的。例如,某
个经理由于设备故障不得不关闭某个工作站,此时他有可能要查询其它工作站的状态,并
且利用得到的信息来改变进行中的工作路线。

   方法

    DBMS 克服了传统文件处理的局限性。它依靠灵活多变的数据结构(将数据元及记录彼此
联系的方法

)来做到这一点。基于不同数据结构的 DBMS 之间差别很大。有三种设计 DBMS

软件的方法
    1.数据系统语言会议(CODASYL)设计并发布的基于网络或丛形数据结构的 DBMS 指南。

    2.IBM 的信息管理系统(IBS)使用的一种层次结构。
    3.某些最近设计的基于关系数据结构的 DBMS。

上述的每一种方法是基本概念和术语的差别都很大。因此,为了减少混淆和便于理解,

以下的阐述和讨论只使用网络方法。

    库设计

    1.数据库设计方法

    我们通过下面的例子来说明数据库管理系统和一种数据库设计方法的原理。考察下述情