10.2.3 DBMS的主要功能
DBMS应该提供以下几方面的功能。
1.数据库的定义功能
为了精确定义数据结构,DBMS必须提供定义数据库的功能,DBMS中实现这部分功能的语言就是数据定义语言(Data Description Language,DDL)。
比如,建立数据库、删除数据库、精确定义数据库中一个实体的各个属性,都属于数据定义语言的范畴。
2.数据操纵功能
为了对数据库中的数据进行插入、修改、删除、检索等操作,DBMS提供了数据操纵语言(Data Manipulation Languge,DML)。
3.数据库运行控制功能
为了管理用户,尤其是多个用户使用数据库,DBMS必须提供以下三方面的数据控制功能:
·并发控制功能 当多个用户同时修改某些数据项时,先存储的修改就会丢失。所以,DBMS应该对要修改的数据项采取一定的措施,如加锁、暂时禁止其他用户访问等。
·数据的安全性控制功能 这是对数据库采用的一种保护措施,防止非授权的用户访问并修改数据库。
·数据的完整性控制功能 数据完整性是数据的准确性和一致性的测度。例如,日期的月份应该在1~12之间;学生所属的系应该是所在院校已开设的系,等等。DBMS应该采取一定的措施,保证数据的完整性。
数据库的运行控制功能一般是通过数据库管理例行程序实现的,系统总控程序、数据装入、访问、并发控制程序、保密控制程序、数据库完整性控制程序、通信控制程序、工作日志程序、性能监督程序、系统恢复程序都属于数据库管理例行程序。它们属于DBMS,程序员可以调用其中的一部分。
4.数据字典
数据字典(Data Dictionary,DD)中存放着对实际数据库各级模式所做的定义,即对数据库结构的描述。这些数据是数据库系统中的“数据的数据”,称为元数据(Metadata)。
5.通信
DBMS具有与操作系统的联机处理、分时系统及远程作业输入的相关接口,负责处理数据的传送。对网络环境下的数据库系统,还应该包括DBMS与网络中其他软件系统的通信功能以及数据库之间的互操作功能。