数据库系统的三级模式结构
数据库系统的三级模式结构是指数据库系统是由模式、外模式和内模式三级构成的。
(1)模式 模式也称逻辑模式或概念模式,是数据库中全体数据的逻辑结构和特征的描述,是所有⽤户的公共数据视图。
模式实际上是数据库数据在逻辑级上的视图。⼀个数据库只有⼀个模式。定义模式时不仅要定义数据的逻辑结构,⽽且要定义数据之间的联系,定义与数据有关的安全性、完整性要求。
(2)外模式 外模式也称⽤户模式,它是数据库⽤户能够看见和使⽤的局部数据的逻辑结构和特征的描述,是数据库⽤户的数据视图,是与某⼀应⽤有关的数据的逻辑表⽰。 外模式通常是模式的⼦集。⼀个数据库可以有多个外模式。应⽤程序都是和外模式打交道的。外模式是保证数据库安全性的⼀个有⼒措施。每个⽤户只能看见和访问所对应的外模式中的数据,数据库中的其余数据对他们是不可见的。
(3)内模式 内模式也称存储模式,⼀个数据库只有⼀个内模式。它是数据物理结构和存储⽅式的描述,是数据在数据库内部的表⽰⽅式。例如,记录的存储⽅式是顺序结构存储还是B树结构存储;索引按什么⽅式组织;数据是否压缩,是否加密;数据的存储记录结构有何规定等。
2. 数据库的⼆级映像功能与数据独⽴性 为了能够在内部实现数据库的三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像。
(1)外模式/模式映像 对应于同⼀个模式可以有任意多个外模式。对于每⼀个外模式,数据库系统都有⼀个外模式/模式映像,它定义了该外模式与模式之间的对应关系。 当模式改变时,由数据库管理员对各个外模式/模式映像作相应的改变,可以使外模式保持不变。应⽤程序是依据数据的外模式编写的,从⽽应⽤程序可以不必修改,保证了数据与程序的逻辑独⽴性。
(2)模式/内模式映像 数据库中只有⼀个模式,也只有⼀个内模式,所以模式/内模式映像是惟⼀的,它定义了数据库的全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改变时,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从⽽应⽤程序也不必修改。保证了数据与程序的物理独⽴性。
在数据库的三级模式结构中,数据库模式即全局逻辑结构是数据库的中⼼与关键,它独⽴于数据库的其他层次。因此,涉及数据库模式结构时应⾸先确定数据库的逻辑结构。