知识拓展
按模块结构划分DBMS组成
数据库管理系统(DBMS)是对数据库及数据进行统一管理和控制的系统软件,由多个模块组成。其用途、版本及复杂程度各异,且程序不同。按程序实现的功能, DBMS可以分为四部分 。
1)语言编译处理程序。包括数据定义语言(Data Definition Language,DDL)、数据操作语言(Data Manipulation Language,DML)、数据控制语言(Data Control Language,DCL)和事务管理语言(Transact Management Language,TML)及其编译程序。
2)系统运行控制程序。主要包括系统总控程序、安全性控制程序、完整性控制程序、并发控制程序、数据存取和更新程序、通信控制程序。
3)系统建立与维护程序。主要包括装配程序、重组程序和系统恢复程序。
特别理解
数据字典的基本概念
4)数据字典。对于用户为一组只读的表,其内容包括数据库中所有模式对象特征的描述信息,如表、视图及索引等,还包括来自用户的信息、系统状态信息和数据库统计信息等。
在计算机系统中,通过DBMS和数据库实现对数据的管理。其 主要功能 如下。
1)数据定义功能。主要通过DBMS的数据定义语言(DDL)完成,定义(建立)数据库及其组成元素的结构。用户可对数据库对象进行定义,如对数据库、表、视图和索引等进行定义。
2)数据操作功能。可通过DBMS的数据操作语言(DML)进行操作,实现对数据的基本操作,如数据的查询、插入、删除和修改等。个别文献将数据查询语言(DQL)单列。
3)事务与运行管理是 DBMS的核心功能 。在数据库的建立、运行和维护中,数据控制语言(DCL)、事务管理语言(TML)和系统运行控制程序等,可由DBMS统一管理和控制,并保证数据的安全性和完整性、多用户对数据并发控制和意外时的系统恢复。
4)组织、管理和存储数据。DBMS可对各种数据分类组织、管理和存储,包括用户数据、数据字典、数据存取路径等。DBMS还可确定文件结构种类、存取方式和数据组织,实现数据之间的联系等,提高存储空间利用率和存取效率。
5)数据库的建立和维护功能。数据库的建立是指数据的载入、存储、重组与恢复等。数据库的维护是指数据库及其组成元素的结构修改、数据备份等。其主要包括数据库初始数据的输入、转换,数据库的转储与恢复,数据库的重新组织和性能监视、分析等,可用相关应用程序或管理工具实现。
6)其他功能。主要包括DBMS同其他软件系统的数据通信功能、不同DBMS或文件系统的数据转换功能、不同数据库之间的互访和互操作功能等。
知识拓展
基于数据模型的DBMS
DBMS的工作机制 是将用户对数据的操作转换为对系统存储文件的操作,有效地实现数据库三级模式结构之间的转换。DBMS可以进行数据库及数据的定义和建立、数据库和数据的操作(输入、查询、修改、删除、统计、输出等)与管理,以及数据库的控制与维护、故障恢复和交互通信等。
DBMS是数据库系统的核心和关键 , 用于 统一管理数据库系统中的各种操作,包括数据定义、查询、更新及各种管理与控制,如定义(建立)、操作(处理)、管理与维护数据库和数据,以及数据库的备份与恢复等。 DBMS的工作模式示意图 如图1-21所示。
图1-21 DBMS的工作模式示意图
DBMS的查询操作工作模式 如下。
1)接收应用程序(用户)的数据请求和处理请求。
2)将用户的查询数据请求(高级指令)转换成复杂的低层指令。
3)低层指令实现对数据库的各种具体操作。
4)接收数据库操作得到的所有查询结果。
5)对查询结果进行处理,包括相应的格式转换。
6)最后将处理结果返回给用户(终端)。
【案例1-10】 利用DBMS查询示例图 。为了对数据库系统工作有更具体深入的了解,下面以一个查询(select)操作为例介绍该命令执行的主要步骤,其执行过程如图1-22所示。
图1-22 用户访问数据的查询过程
DBMS是数据库系统核心,需要借助操作系统对数据进行统一管理和控制。
1)当用户执行应用程序,查询一条记录时,就会向DBMS发出查询(select)命令。
2)DBMS接到命令后,先检查命令语法。通过后对其进行语义检查和存取权限检查。
3)查询对象(数据库、数据表、数据,以及结构、格式和位置等)后进行优化。
4)在缓冲区中查找记录,如果找到则转到步骤9),否则转到步骤5)。
5)DBMS与数据字典交互,得到数据存储模式信息。
6)DBMS向操作系统发出具体的读取记录的命令。
7)操作系统接到DBMS文件读取指令后,读取相应文件。
8)操作系统将读到的指定数据发送到缓冲区。
9)DBMS导出操作用户所需要的数据格式。
10)应用程序将缓存区的数据传送到终端。
11)将命令执行状态返回应用程序,程序根据返回状态判断命令执行是否成功。
讨论思考:
1)数据库管理系统的主要功能和机制有哪些?
2)简要说明数据库管理系统的工作模式。
实验视频
实验视频1 讲解及演示