一、形象解释数据库的三级模式和两级映射
数据库的三级模式和两级映射是美国国家标准协会(American National Standard Institute, ANSI)的数据库管理系统研究小组于1978年提出了标准化的建议,将数据库结构分为3级:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级.而两级映射则连接三级不同模式的通道。
二、三级模式两级映像概念图
假如现在有一个学生信息库.
内模式Internal Schema(物理级)
由概念图可以看出内模式是最接近硬件的,事实上内模式是对数据物理结构和储存方式的描述.它在数据库创建的开始就已经确定,决定了数据在硬盘上以什么方式存储,数据在储存在硬盘上的什么位置.比如说 学生的信息储存在哪个硬盘,以二进制还是文本方式.这就属于内模式
概念模式Conceptual Schema(概念级)
也称逻辑模式,概念模式相当于外模式和内模式的一个缓冲带.它是对全体数据的逻辑结构和特性的描述.它决定了一个表中有哪些字段,表与表之间又有什么关系.例如:在学生信息库中,学生表有哪些字段,哪个字段是主键,学生表和老师表之间又有什么关系.这就是概念模式
外模式(用户级)
外模式是面对用户级的,外模式就是针对用户需求而呈现的局部数据和逻辑.它是有多个的.它决定了某些特定用户能看到哪些内容.例如:在学生信息系统中,面对学生用户,数据库几乎将所有关于学生自己的数据和逻辑呈现.但是对普通老师用户,只能看到自己所教科目学生的成绩.对教务处主任来说却几乎能看到所有同学的所有的成绩.每个用户看到的不同的数据和逻辑就是不同的外模式.
两级映射
其实很简单,数据库分为了三级,那么就提供了两级映像.
模式/内模式的映像
实现概念模式到内模式之间的相互转换
外模式/模式的映像
实现外模式到概念模式之间的相互转换
使用三级模式和两级映射的好处
实现了数据物理独立性和逻辑独立性
数据物理独立性
因为当数据库的内模式改变时,逻辑模型不变.
逻辑独立性
数据逻辑改变时,应用程序不用改变,因为应用程序只关心外模式(视图).