sql 模式,外模式,内模式 二级映像

转自http://blog.sina.com.cn/databasegao

"

早上备课的时候,发现教材第二章的2.2节数据库设计概述中有些概念性的错误,从而使我想到,对于外模式、模式、内模式的概念学生也不一定能理解透彻,于是想通过博客再谈仔细。

首先,谈谈模式的概念,模式为某种事物的标准形式或使人可以照着做的标准样式。这个词用在数据库中,它是由英文的Schema翻译过来的。在数据库管理系统中,其模式是指数据模式(data schema),是数据抽象的结果表示,如用关系模型抽象学生的基本信息表示为:学生(学号,姓名,性别,出生年月,入校年月,专业编号),此表示即为一种数据模式。

在数据库管理系统中,将数据按三层结构来抽象,这实质上是与数据库的设计步骤密不可分的。数据库的设计首先应分析现实要求,即做需求分析,需求分析的任务就是通过调查、访谈、讨论,分析用户的业务流程,从而得出用户的需求,并用数据流程图、数据字典将用户需求描述出来;其次,在需求分析的基础上,进行数据库概念设计,这种设计与具体的数据库管理系统无关,其任务是抽象出各用户所要求的数据视图(对应于外模式概念),最后综合为全局的数据视图(对应于模式概念),用概念数据模型来抽象,可用ER模型或对象模型。第三步,将用ER模型或对象模型表示的数据视图,转换为关系模式,并对所得关系模式进行优化处理,这就是所谓的数据库逻辑设计(这一步仍然对应于外模式和模式);第四步,在逻辑设计的基础上,将所得的数据模式组织存储到物理介质上,这就是数据库的物理设计(这一步对应于内模式);最后,就是数据库的安全设计,即允许什么样的用户访问数据库,以及合法用户访问数据库中数据的权限等问题。

美国国家标准协会(American National Standard Institute,ANSI)的数据库管理系统研究小组于1978年提出了标准化的建议,将数据库结构分为3级:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级。用户级对应外模式,概念级对应模式,物理级对应内模式,使不同级别的用户对数据库形成不同的视图。所谓视图,就是指观察、认识和理解数据的范围、角度和方法,是数据库在用户“眼中”的反映,很显然,不同层次(级别)用户所“看到”的数据库是不相同的。

1. 模式

模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。它是由数据库管理系统提供的数据模式描述语言(Data Description Language,DDL)来描述、定义的,体现、反映了数据库系统的整体观。

2.外模式

外模式又称子模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(Data Manipulation Language,DML)对这些数据记录进行处理。外模式反映了数据库的用户观。

3.内模式

内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,它描述了数据在存储介质上的存储方式及物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义,它是数据库的存储观。

在一个数据库系统中,只有唯一的数据库,因而作为定义、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是惟一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是惟一的,也不可能是惟一的。

4.三级模式间的映射(二级映像)

数据库的三级模式是数据库在三个级别 (层次)上的抽象,使用户能够逻辑地、抽象地处理数据而不必关心数据在计算机中的物理表示和存储。实际上,对于一个数据库系统而言,物理级数据库是客观存在的,它是进行数据库操作的基础,概念级数据库中不过是物理数据库的一种逻辑的、抽象的描述(即模式),用户级数据库则是用户与数据库的接口,它是概念级数据库的一个子集(外模式)。

用户应用程序根据外模式进行数据操作,

通过外模式/模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;(逻辑性)

通过模式/内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式/内模式映射,就能保持模式不变,因此应用程序也可以保持不变。(物理性)

转自http://blog.sina.com.cn/databasegao

"

早上备课的时候,发现教材第二章的2.2节数据库设计概述中有些概念性的错误,从而使我想到,对于外模式、模式、内模式的概念学生也不一定能理解透彻,于是想通过博客再谈仔细。

首先,谈谈模式的概念,模式为某种事物的标准形式或使人可以照着做的标准样式。这个词用在数据库中,它是由英文的Schema翻译过来的。在数据库管理系统中,其模式是指数据模式(data schema),是数据抽象的结果表示,如用关系模型抽象学生的基本信息表示为:学生(学号,姓名,性别,出生年月,入校年月,专业编号),此表示即为一种数据模式。

在数据库管理系统中,将数据按三层结构来抽象,这实质上是与数据库的设计步骤密不可分的。数据库的设计首先应分析现实要求,即做需求分析,需求分析的任务就是通过调查、访谈、讨论,分析用户的业务流程,从而得出用户的需求,并用数据流程图、数据字典将用户需求描述出来;其次,在需求分析的基础上,进行数据库概念设计,这种设计与具体的数据库管理系统无关,其任务是抽象出各用户所要求的数据视图(对应于外模式概念),最后综合为全局的数据视图(对应于模式概念),用概念数据模型来抽象,可用ER模型或对象模型。第三步,将用ER模型或对象模型表示的数据视图,转换为关系模式,并对所得关系模式进行优化处理,这就是所谓的数据库逻辑设计(这一步仍然对应于外模式和模式);第四步,在逻辑设计的基础上,将所得的数据模式组织存储到物理介质上,这就是数据库的物理设计(这一步对应于内模式);最后,就是数据库的安全设计,即允许什么样的用户访问数据库,以及合法用户访问数据库中数据的权限等问题。

美国国家标准协会(American National Standard Institute,ANSI)的数据库管理系统研究小组于1978年提出了标准化的建议,将数据库结构分为3级:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级。用户级对应外模式,概念级对应模式,物理级对应内模式,使不同级别的用户对数据库形成不同的视图。所谓视图,就是指观察、认识和理解数据的范围、角度和方法,是数据库在用户“眼中”的反映,很显然,不同层次(级别)用户所“看到”的数据库是不相同的。

1. 模式

模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。它是由数据库管理系统提供的数据模式描述语言(Data Description Language,DDL)来描述、定义的,体现、反映了数据库系统的整体观。

2.外模式

外模式又称子模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(Data Manipulation Language,DML)对这些数据记录进行处理。外模式反映了数据库的用户观。

3.内模式

内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,它描述了数据在存储介质上的存储方式及物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义,它是数据库的存储观。

在一个数据库系统中,只有唯一的数据库,因而作为定义、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是惟一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是惟一的,也不可能是惟一的。

4.三级模式间的映射(二级映像)

数据库的三级模式是数据库在三个级别 (层次)上的抽象,使用户能够逻辑地、抽象地处理数据而不必关心数据在计算机中的物理表示和存储。实际上,对于一个数据库系统而言,物理级数据库是客观存在的,它是进行数据库操作的基础,概念级数据库中不过是物理数据库的一种逻辑的、抽象的描述(即模式),用户级数据库则是用户与数据库的接口,它是概念级数据库的一个子集(外模式)。

用户应用程序根据外模式进行数据操作,

通过外模式/模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;(逻辑性)

通过模式/内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式/内模式映射,就能保持模式不变,因此应用程序也可以保持不变。(物理性)


相关内容

  • 数据库基础概念
  • 第一章 数据库技术概论 数据库(Database ,DB )是存储在计算机内.有组织的.可共享的数据集合.数据库中的数据按一定的数据模型进行组织和描述,具有较小的冗余度.较高的数据易扩展性和独立性,并可为多个用户所共享. 数据库管理系统(Database Management Sys,DBMS )是 ...

  • [数据库基础]复习题(选修课)
  • 第一篇 绪 论 1.试述数据.数据库.数据库系统.数据库管理系统的概念. 答:(1)数据(Data ):描述事物的符号记录称为数据.数据的种类有数字.文字.图形.图像.声音.正文等.数据与其语义是不可分的.(2)数据库(DataBase ,简称DB ):数据库是长期储存在计算机内的.有组织的.可共享 ...

  • 数据库课后练习及答案
  • 第一章:一.单选题 1. 以下的英文缩写中表示数据库管理系统的是( B). A. DB B.DBMS C.DBA D.DBS 2. 数据库管理系统.操作系统.应用软件的层次关系从核心到外围分别是(B ). A. 数据库管理系统.操作系统.应用软件 B. 操作系统.数据库管理系统.应用软件 C. 数据 ...

  • 数据库原理
  • 名词解释 1. 数据操纵:P18 对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则. 2. 平凡的函数依赖:P181 在关系模式R(U)中,对于U 的子集X 和Y ,若X →Y ,但Y ⊆X, 则称X →Y 是平凡的函数依赖. 3. 排它锁(X 锁): P312 排 ...

  • 数据库第1.2章作业答案
  • 第1章 绪论 1 .试述数据.数据库.数据库系统.数据库管理系统的概念. 答: ( l )数据( Data ) :描述事物的符号记录称为数据.数据的种类有数字.文字.图形.图像.声音.正文等.数据与其语义是不可分的.解析在现代计算机系统中数据的概念是广义的.早期的计算机系统主要用于科学计算,处理的数 ...

  • 数据库原理与应用教程-期末测试题
  • 数据库原理与应用教程 期末测试题(一) 一. 填空题(每空1分,共10分) 1.数据库系统的核心是. 2.在关系模型中,实体以及实体间的联系都是用______来表示的. 3.设关系模型R(A,B ,C) ,F 是R 上的函数依赖集,F={A→B,C→B},则R 的候选码为_________. 4.层 ...

  • 数据库系统工程师14年真题(标准答案)
  • 2014年上半年数据库系统工程师考试上午真题(标准参考答案) 在CPU中,常用来为ALU执行算术逻辑运算提供数据并暂存运算结果的寄存器是(D). A. 程序计数器 B. 状态寄存器 C. 通用寄存器 D. 累加寄存器 某机器字长为n,最高位是符号位,其定点整数的最大值为(B). nn-1nn-1 A ...

  • 电大试卷-数据库基础与应用汇总
  • 数据库基础与应用期末复习题(归纳整理) 一.填空题 1.Access "表"结构设计窗口分为两个部分,上半部分是 表设计器 ,下半部分是 字段属性 . 2.Access "表"结构设计窗口中上半部分的"表设计器"是由 字段名称 . 数据类型 ...

  • 电大数据结构考试资料总汇
  • 1. 下列功能中,不属于数据库管理系统功能的是( B ).B .数据库文件读写 2. 设有学生表(学号,姓名,所在系,专业,身份证号),其中 能够作为候选键的是( B ). B .学号.身份证号 3. 下列运算中,属于专门的关系运算的是( C ).C .集合的 连接运算 4. 下列扩展名中,属于SQ ...