数据库系统的结构
数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。
1)外模式(External Schema)
外模式(也称子模式或用户模式)
数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
通常是模式的子集,一个数据库可以有多个外模式
外模式的地位:介于模式与应用之间
模式与外模式的关系:一对多
外模式与应用的关系:一对多
外模式的用途:保证数据库安全性的一个有力措施。
2)模式(Schema)
模式(也称逻辑模式)
数据库中全体数据的逻辑结构和特征的描述
一个数据库只有一个模式
模式的地位:是数据库系统模式结构的中间层
与数据的物理存储细节和硬件环境、具体的应用程序、开发工具及高级程序设计语言无关
模式的定义包括:
数据的逻辑结构、数据之间的联系、数据有关的安全性、完整性要求
3)内模式(Internal Schema)
内模式(也称存储模式)
是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式,例如:
记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)
索引的组织方式
数据是否压缩存储
数据是否加密
数据存储记录结构的规定
一个数据库只有一个内模式
三者之间的关系:
模式是内模式的逻辑表示
内模式是模式的物理实现
外模式是模式的部分抽取
数据库的二级映像与数据独立性
三级模式与二级映像
三级模式是对数据的三个抽象级别
二级映像在DBMS内部实现这三个抽象层次的联系和转换
二级映象总结
外模式/模式映像的用途
保证数据的逻辑独立性
当模式改变时,数据库管理员修改有关的外模式/模式映像,使外模式保持不变
应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
模式/内模式映像的用途
保证数据的物理独立性
当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映像,使模式保持不变
应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。