亲宝软件园·资讯

展开

【数据库】三级模式、二级映射

Nemo& 人气:0
# 三级模式和二级映射 在数据模型中有**“型”**(Type, T)和**“值”**的概念。 - **型:**是指对某一类数据的结构和属性的说明 > **类比:**类 - **值:**是型的一个具体赋值。 > **类比:**对象 **模式和实例:** - **模式:**是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及到型的描述,不涉及到具体的值。 - **实例:**模式的一个具体值称为一个实例。同一个模式可以有很多实例。 > **对比:** **模式**是**相对稳定**的,而**实例**是**相对变动**的,因为数据库中的数据是在不断更新。 **模式**反映的是数据的结构及其联系,而**实例**反映的是数据库某一时刻的状态。 ## 三级模式结构 > 数据库领域公认的标准结构是三级模式结构,它包括模式、外模式和内模式,有效地组织、管理数据,提高了数据库的逻辑独立性和物理独立性。 ![](https://img2018.cnblogs.com/blog/1542615/202002/1542615-20200225150847562-2128831067.png) - **模式:**又称**概念模式**或**逻辑模式**,对应于**概念级**。 它是由数据库设计者综合所有用户的数据,按照统一的观点构造的**全局逻辑结构**,是对数据库中全部数据的逻辑结构和特征的总体描述,是**所有用户的公共数据视图**(**全局视图**)。 它是由数据库管理系统(DBMS)提供的数据模式描述语言(Data Description Language, **DDL**)来描述和定义的, 体现和反映了数据库系统(DBS)的**整体观**。 > **补充:** **数据模式定义语言**(Data Definition Language, **DDL**):是用于描述数据库中要存储的现实世界实体的语言。 **DDL**主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作上。 >> **例如:**其实就是我们在创建表的时候用到的一些sql,比如说,CREATE、ALTER、DROP等。 - **外模式:**又称**子模式**或**用户模式**,对应于**用户级**。 它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。 它是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。 用户可以通过外模式描述语言来描述和定义对应于**用户的数据记录(外模式)**,也可以利用数据操纵语言(Data Manipulatioin Language, **DML**)对这些数据记录进行描述和定义。 外模式反映了数据库的**用户观**。 > **补充:** **数据操纵语言**(Data Manipulation Language, **DML**),用户通过它可以实现对数据库的基本操作。 **DML**主要用来对数据库的数据进行一些操作。 >> **例如:**其实就是我们最经常用到的 SELECT、UPDATE、INSERT、DELETE。 - **内模式:**又称**存储模式**,对应于**物理级**。 它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的**存储方式**和**物理结构**,对应着实际存储在外存储介质上的数据库。 它是由内模式描述语言来描述和定义, 它是数据库的**存储观**。 > **注意:** 在**一个数据库系统**中,只有**唯一的数据库**, 因而作为定义、描述数据库存储结构的**内模式** 和 定义、描述数据库逻辑结构的**模式**,也是**唯一**的, 但是建立在数据库系统之上的应用则是非常广泛多样的,所以对应的**外模式****不是唯一**的,也不可能是唯一的。 ## 二级映像功能 **二级映像:**保证了**逻辑数据独立性**和**物理数据独立性**。 > 这里的**映射:**是指两个模式之间相互转换。 - **外模式——模式映射:**(**逻辑数据独立性**) 用户应用程序根据外模式进行数据操作,通过**外模式——模式映射**,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来, 当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变。 - **模式——内模式映射:**(**物理数据独立性**) 通过**模式——内模式映射**,定义建立数据的**逻辑结构(模式)**与**存储结构(内模式)**间的对应关系, 当数据存储结构发生变化时,只需改变模式——内模式映射,就能保持模式不变,因此应用程序也可以保持不变。

加载全部内容

相关教程
猜你喜欢
用户评论