数据库具有严谨的体系结构,如图1.2所示,这样可以有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性。数据库领域公认的标准结构是三级模式结构。
图1.2 数据库体系结构
数据库系统的三级模式结构是指模式、外模式和内模式,如图1.3所示,下面分别进行介绍。
图1.3 数据库三级模式结构
模式也称逻辑模式或概念模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式处于三级结构的中间层,一个数据库只有一个模式。
定义模式时,不仅要定义数据的逻辑结构,而且要定义数据之间的联系,以及与数据有关的安全性、完整性要求。
外模式也称用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构与特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。外模式是模式的子集,一个数据库可以有多个外模式。
外模式是保证数据安全性的一个有力措施。
内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
为了能够在内部实现数据库的3个抽象层次的联系和转换,数据库管理系统在三级模式之间提供了两层映射。
一个模式可以有任意多个外模式,称为子模式。对于子模式,数据库系统有一个子模式到模式的映射。当模式改变时,由数据库管理员对子模式到模式的映射做相应的改变,使外模式保持不变。这样,依据数据外模式编写的应用程序就不用修改,保证了数据与程序的逻辑独立性。
数据库中只有一个模式和一个内模式,所以模式到内模式的映射是唯一的,它定义了数据库的全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改变时,由数据库管理员对模式到内模式的映射做相应改变,使模式保持不变,应用程序也相应地不做变动。这样,就保证了数据与程序的物理独立性。