数据库系统

要了解数据库,就要对数据库有一个全面的认识。一个完整的数据库系统是由计算机系统、数据库、数据库管理系统、应用程序集合及数据库管理人员组成的。

  1. 计算机系统。计算机系统指的是进行数据管理的计算机硬件资源和基本软件资源。硬件资源就是计算机中央处理器、大容量内存和外存以及必要的输入输出设备。现在用于数据库管理的计算机有大、中、小、微各种机型,还有工作站级的计算机。一般来讲,在面向多用户的系统中,用于中心管理数据库的面向数据库管理人员的,和用于查询面向用户的终端计算机是不同档次的。此外,在计算机系统中还包含软件资源,比如操作系统、网络管理软件以及下面要讲的数据库管理系统和应用程序。

  2. 数据库。数据库正是数据库系统要管理的对象,通过前面的说明, 我们知道它们是以一定的组织方式存储在一起的、能为多用户共享的、与应用程序彼此独立的相合关联的数据集合。在来自于不同厂家的数据库系统中,数据库的物理存储形式是不同的。在 XBASE 型微机数据库中,并没有一个叫做数据库的实体,可以见到的只是组成数据库的一个个数据文件和索引文件,索引文件需要用户来更新。而在 AC-CESS 中,数据库是以一个*.MDB 文件的形式存在,没有独立的数据文件和索引文件,数据库中有的是一个个的表,大致类似于 XBASE 中的数据文件。索引是数据库自动维护的,不需要用户自动更新。其他大型数据库系统的数据库则还可能有其他的物理形式存在。读者在学习使用数据库的过程中,会逐渐对数据库有更感性的认识。

  3. 数据库管理系统(DBMS)。用户一般不直接加工或使用数据库中的数据,而必须通过数据库管理系统。DBMS 的主要功能是维持数据库系统的正常活动,接受并响应用户对数据库的一切访问要求,包括建立和删除数据文件、检索、统计、修改和组织数据库中的及为用户提供对数据库的维护手段等。通过使用 DBMS,用户可以逻辑地、抽象地处理数据,而不必关心这些数据在计算机中的具体存放方式,以及计算机处理数据的过程细节。这样,把一切处理数据的具体而繁杂的工作交给 DBMS 去完成。就好像在计算机的发展过程中,操作系统的出现,解脱了用户,不必关心数据的实际存放和读取, 而只需给出文件名和路径一样。

DBMS 是一个以统一的方式管理、维护数据库的软件的集合。具体来说, 就是厂家发行的用于数据库管理的系统软件,如 FOXBASE,ACCESS,SYBASE

等。DBMS 在操作系统的支持与控制下运行,DBMS 完成三部分功能: 1)语言处理功能。DBMS 必须能理解用户的需求来描述数据,比如数据

之间的联系,数据的完整性约束等;还要能理解用户的操纵数据的请求,比如,用户要插入还是要检索?有的数据库管理系统提供自己的语言,比如, 用 FOXBASE 编程,使用的就是 FOXBASE 这个数据库管理系统提供的语言。也有的是利用某种程序设计语言,这种语言提供数据库操纵语句。如 VB、VC 等。

  1. 系统运行控制功能。包括系统总控;并发、数据安全性、检查数据完整性等控制程序;数据访问、通讯程序。

  2. 系统维护功能,包括数据备份(转储)、作日志、系统自动恢复等功能。微机平台的简单的 DBMS 不具备上面的全部功能;

对一些微机平台的 DBMS 而言,如 FOXBASE、FOXPRO 等,因为它提供的语言很简单,用户可以很容易的掌握,可以直接使用数据库管理系统,来操纵数据库。但对一些大型的复杂的数据库管理系统而言,用户不能够直接操作DBMS 来管理数据,一般还要由程序设计人员进一步开发出应用程序,来更方便地满足用户的需求。包括设计出更容易使用的友好界面上,用户在上面输入数据、输入查询要求、输出处理结果等。这就是下面要讲的数据库系统的应用程序部分。

  1. 应用程序集合及数据库管理人员。应用程序是计算机专业人员开发的面向最终用户的软件。它是在 DBMS 基础上实现的。也就是说,数据库应用程序不能脱离数据库管理系统环境。要先启动数据库管理系统,然后再启动应用程序。它的使用,完全是为了方便用户。因为对各行各业的用户而言, 学会控制计算机的算法语言,掌握数据库的原理,维护数据库的正常运转, 是困难的和不现实的。而应用程序,一般具有友好的界面,便于用户表达自己的需求。比如,要想查询自己的成绩,应用程序可能设计成引导用户用鼠标或键盘选择查询点,姓名还是学号,然后程序提示在合适的位置用键盘输入名字或学号。程序去与 DBMS 打交道,完成查询的过程,并将查询结果显示在屏幕上。事实上,有些应用程序使用起来比这还要简单,比如,超级市场的收银员,只是将光笔在商品上一扫,剩下的工作,包括从库存中减分一件, 在营业额中增加一笔收入,将客户的商品及应付款打印出来等一系列工作, 全部由应用程序完成。

在一个安全性较高的大型的数据库管理系统中,比如金融部门等,必须有专门的管理人员,随时作监视应用程序、维护硬件设备、定时备份等工作。他们也是一个数据库管理系统中不可缺少的一个重要部分。

整个数据库系统可用图 2.2 表示:

图 2.2 数据库系统

数据库系统 - 图1