第1章2_数据模型_第1页
第1章2_数据模型_第2页
第1章2_数据模型_第3页
第1章2_数据模型_第4页
第1章2_数据模型_第5页
已阅读5页,还剩93页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、An Introduction to Database Systenm温浩宇温浩宇数据库原理与应用数据库原理与应用第一章第一章 绪绪 论论An Introduction to Database Systenm第一章第一章 绪论绪论1.1 数据库系统概述1.2 数据模型1.3 数据库系统结构1.4 数据库系统的组成1.5 小结An Introduction to Database Systenm1.2数据模型数据模型n在数据库中用数据模型数据模型这个工具来抽象、表示和处理抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现数据模型就是现实世界的模拟实世界的模拟。数据模型数据模型是用来描

2、述数据、组织数据是用来描述数据、组织数据和对数据进行操作的。和对数据进行操作的。n数据模型应满足三方面要求n能比较能比较真实真实地模拟现实世界地模拟现实世界n容容易易为人们所为人们所理解理解n便于在计算机上便于在计算机上实现实现模型:模型:是现实世界某个对象特征的模拟和抽象。如:地图。数据模型:数据模型:是对现实世界数据特征的抽象,也是一种模型。An Introduction to Database Systenm1.2数据模型数据模型n根据数据抽象的不同级别,将数据模型划分为3类:n概念模型:概念层次的数据模型,也称为信息模型n逻辑模型:用于描述数据库数据的整体逻辑结构 n物理模型:用来描述

3、数据的物理存储结构和存取方法An Introduction to Database Systenm1.2.1两类数据模型两类数据模型n根据模型应用的不同目的,数据模型分两个不同的层次: 1、 概念模型概念模型 也称信息模型,它是按也称信息模型,它是按用户用户的观点来对的观点来对数据和信息建模。数据和信息建模。主要用于数据库设计主要用于数据库设计。 2、 逻辑模型和物理模型逻辑模型和物理模型 主要包括网状模型、层次模主要包括网状模型、层次模型、关系模型、面向对象模型等,它是按型、关系模型、面向对象模型等,它是按计算机系统计算机系统的的观点对数据建模观点对数据建模。主要用于主要用于 DBMS的实现

4、的实现。 第二类中的物理模型是对数据最底层的抽象,它描第二类中的物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方式。述数据在系统内部的表示方式和存取方式。 数据模型是数据库系统的核心和基础。计算机实现数据模型是数据库系统的核心和基础。计算机实现的的DBMSDBMS软件都是基于某种数据模型的。软件都是基于某种数据模型的。An Introduction to Database Systenm1.2.1两类数据模型两类数据模型n客观对象的抽象过程-两步抽象n现实世界中的客观对象抽象为概念模型;现实世界中的客观对象抽象为概念模型;n把概念模型转换为某一把概念模型转换为某一DBMS支

5、持的数据模型。支持的数据模型。 概念模型是现实世界到机器世界的一个中间层次。不依赖具体的DBMS。认识认识抽象抽象An Introduction to Database Systenm 1.2.2 数据模型的组成要素数据模型的组成要素(三要素三要素)n数据结构 n数据操作 n数据完整性约束 数据模型通常由数据模型通常由三部分组成。三部分组成。An Introduction to Database Systenm 1. 数据结构数据结构n什么是数据结构n简单讲是对象类型的集合。n定义:数据结构描述数据库的组成对象以及对象之间的联系。n两类对象n与数据类型、内容、性质有关的对象n与数据之间联系有关

6、的对象n数据结构是对系统静态特性的描述An Introduction to Database Systenm 数据结构(续)数据结构(续)n数据库系统中通常有四种数据结构n关系结构n层次结构n网状结构n对象结构n对应的数据模型也有四种n关系模型n层次模型n网状模型n面向对象模型An Introduction to Database Systenm 2.数据操作数据操作 n数据操作n定义:指对数据库中各种对象(型)的实例(值)允许执行的操作集合以及有关的操作规则n数据操作的类型n检索(也叫查询)n更新(包括插入、删除、修改)An Introduction to Database Systenm

7、数据操作数据操作(续续) n数据模型对操作的定义n操作的确切含义n操作符号n操作规则(如优先级)n实现操作的语言n数据操作用于描述系统的动态特性。An Introduction to Database Systenm 3.数据的完整性约束条件数据的完整性约束条件 n数据的完整性约束条件n一组完整性规则的集合。一组完整性规则的集合。(实体、参照、用户定义完整性实体、参照、用户定义完整性)n完整性规则是指完整性规则是指给定的数据模型中数据及其联系给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的

8、型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。正确、有效、相容。例如:性别例如:性别 男、女男、女 月份月份 112 年龄年龄 0An Introduction to Database Systenm 数据的完整性约束条件数据的完整性约束条件(续续)n数据模型对完整性约束条件的定义n反映和规定本反映和规定本数据模型数据模型必须遵守的基本的完整性约必须遵守的基本的完整性约束条件。束条件。例如:在关系模型中,任何关系必须满足例如:在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。实体完整性和参照完整性两个条件。n提供定义完整性约束条件的机制提供定义完整性约束条件的机制,以

9、反映,以反映具体应用具体应用所涉及的数据必须遵守的特定的所涉及的数据必须遵守的特定的语义约束条件语义约束条件。n例如:例如:某大学的数据库中规定本科学生成绩如果有某大学的数据库中规定本科学生成绩如果有6门以上不及格将不能授予学士学位。门以上不及格将不能授予学士学位。An Introduction to Database Systenm 1.2.3 概念模型概念模型1. 概念模型2. 信息世界中的基本概念3. 概念模型的表示方法(E-R图)An Introduction to Database Systenm1. 概念模型概念模型n概念模型的用途n概念模型用于信息世界的建模概念模型用于信息世界的

10、建模n是现实世界到机器世界的一个中间层次是现实世界到机器世界的一个中间层次n是数据库设计的有力工具是数据库设计的有力工具n数据库设计人员和用户之间进行交流的语言数据库设计人员和用户之间进行交流的语言n对概念模型的基本要求n较强的语义表达能力,能够方便、直接地表达应用较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识中的各种语义知识n简单、清晰、易于用户理解简单、清晰、易于用户理解。An Introduction to Database Systenm2. 信息世界中的基本概念信息世界中的基本概念 (1) 实体(Entity) 定义定义:客观存在并可相互区别的事物称为实体。客观存在并可

11、相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念可以是具体的人、事、物或抽象的概念。如如:一个学生、一本书;一堂课、一次比赛。一个学生、一本书;一堂课、一次比赛。(2) 属性(Attribute) 定义定义:实体所具有的某一特性称为属性。实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。一个实体可以由若干个属性来刻画。如:学生的学号、姓名、性别等都是属性。如:学生的学号、姓名、性别等都是属性。学生实体可以由学号、姓学生实体可以由学号、姓名、性别、出生年月、所在院系、入学时间等属性组成。名、性别、出生年月、所在院系、入学时间等属性组成。(3) 码(Key) 定义定义:唯一标

12、识实体的唯一标识实体的属性集属性集称为码。如称为码。如:学生实体的学号学生实体的学号 An Introduction to Database Systenm信息世界中的基本概念信息世界中的基本概念(续续)(4) 域(Domain) 域是一组具有相同数据类型的值的集合。属性的取值范围域是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。来自某个域。如性别的域:男、女;月份的域:如性别的域:男、女;月份的域:1-121-12 (5) 实体型(Entity Type) 具有相同属性的实体必然具有共同的特征和性质。具有相同属性的实体必然具有共同的特征和性质。用用实实体名体名及其及其属性名集合属

13、性名集合来抽象和刻画来抽象和刻画同类实体同类实体, ,称为实体型。称为实体型。如:学生(学号、姓名、性别、系别)如:学生(学号、姓名、性别、系别)(6) 实体集(Entity Set) 同一类型实体的集合称为实体集。同一类型实体的集合称为实体集。如:经管院如:经管院 全体同学就是一个实体集。全体同学就是一个实体集。An Introduction to Database Systenm信息世界中的基本概念信息世界中的基本概念(续续)(7) 联系(Relationship) 现实世界中事物内部以及事物之间的联系在信息世界中现实世界中事物内部以及事物之间的联系在信息世界中反映为实体(型)内部的联系和

14、实体(型)之间的联系。反映为实体(型)内部的联系和实体(型)之间的联系。 实体内部的联系通常是指组成实体的各属性之间的联实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。系;实体之间的联系通常是指不同实体集之间的联系。实体型之间的联系 两个实体型两个实体型 一对一联系(一对一联系(1:1) 三个实体型三个实体型 一对多联系(一对多联系(1:n) 一个实体型一个实体型 多对多联系(多对多联系(m:n) An Introduction to Database Systenm两个实体型间的联系两个实体型间的联系可分为三种可分为三种实体型实体型1联系名联系名

15、实体型实体型2111:1联系联系实体型实体型1联系名联系名实体型实体型2mnm:n联系联系实体型实体型1联系名联系名实体型实体型21n1:n联系联系An Introduction to Database Systenm两个实体型间的联系两个实体型间的联系 n一对一联系 n如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中至多至多有一个(也可没有)实体与之联系,反之亦然,有一个(也可没有)实体与之联系,反之亦然,则称则称实体集实体集A与实体集与实体集B具有一对一联系。具有一对一联系。记为记为1:1。 n 实例班级与班长之间的联系:班级与班长之间的联系:一个班级只有一

16、个正班长一个班级只有一个正班长一个正班长只在一个班中任职一个正班长只在一个班中任职An Introduction to Database Systenm两个实体型间的联系两个实体型间的联系 (续续)n一对多联系n如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实体(个实体(n0)与之联系,反之,对于实体集)与之联系,反之,对于实体集B中中的每一个实体,实体集的每一个实体,实体集A中中至多只有一个至多只有一个实体与之实体与之联系,则称联系,则称实体集实体集A与实体集与实体集B有一对多联系。有一对多联系。 记为记为1:nn实例班级与学生之间的联系:班级与学生

17、之间的联系:一个班级中有若干名学生,一个班级中有若干名学生,每个学生只在一个班级中学习每个学生只在一个班级中学习An Introduction to Database Systenm两个实体型间的联系两个实体型间的联系 (续续)n多对多联系(m:n)n如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实体(个实体(n0)与之联系,反之,对于实体集)与之联系,反之,对于实体集B中中的每一个实体,实体集的每一个实体,实体集A中也有中也有m个实体(个实体(m0)与之联系,则称与之联系,则称实体集实体集A与实体集与实体集B具有多对多联系。具有多对多联系。记为记为m

18、:nn实例课程与学生之间的联系:课程与学生之间的联系:一门课程同时有若干个学生选修一门课程同时有若干个学生选修一个学生可以同时选修多门课程一个学生可以同时选修多门课程An Introduction to Database Systenm多个(多个(两个以上两个以上)实体型间的联系)实体型间的联系n多个实体型间的一对多联系n若实体集若实体集E1,E2,.,En存在联系,对于实存在联系,对于实体集体集Ej(j=1,2,.,i-1,i+1,.,n)中)中的给定实体,最多只和的给定实体,最多只和Ei中的一个实体相联中的一个实体相联系,则我们说系,则我们说Ei与与E1,E2,.,Ei-1,Ei+1,.,

19、En之间的联系是一对多的。之间的联系是一对多的。An Introduction to Database Systenm多个(多个(两个以上两个以上)实体型间的联系)实体型间的联系(续续)n实例 课程课程、教师教师与与参考书参考书三个实体型三个实体型如果一门课程可以有若干个教师讲授,使用若干如果一门课程可以有若干个教师讲授,使用若干本参考书,而每一个教师只讲授一门课程,每一本本参考书,而每一个教师只讲授一门课程,每一本参考书只供一门课程使用参考书只供一门课程使用 则课程与教师、参考书之间的联系是一对多的则课程与教师、参考书之间的联系是一对多的n多个实体型间的一对一联系n多个实体型间的多对多联系(

20、见P16)An Introduction to Database Systenm单个实体型内的联系单个实体型内的联系n一对多联系n实例 职工实体集内部具有职工实体集内部具有领导领导与与被领导被领导的联系的联系某一职工(干部)某一职工(干部)“领导领导”若干名职工若干名职工一个职工仅被另外一个职工直接领导一个职工仅被另外一个职工直接领导这是一对多的联系这是一对多的联系n一对一联系n多对多联系An Introduction to Database Systenm3. 概念模型的表示方法概念模型的表示方法n概念模型的表示方法有多种,其中最为著名、最为常用的是E-R方法.n实体联系方法(E-R方法)

21、(Entity-Relationship Approach)n用E-R图来描述现实世界的概念模型nE-R方法也称为E-R模型An Introduction to Database SystenmE-R图图n实体型n用矩形表示,矩形框内写明实体名。学生学生教师教师An Introduction to Database SystenmE-R图图(续续)n属性n用椭圆形表示,并用无向边无向边将其与相应的实体型连接起来学生学生学号学号年龄年龄性别性别姓名姓名An Introduction to Database SystenmE-R图图(续续)n联系n联系本身:用菱形表示,菱形框内写明联系名,用菱形表

22、示,菱形框内写明联系名,并用并用无向边无向边分别与有关实体型连接起来,同时在无分别与有关实体型连接起来,同时在无向边旁标上联系的类型(向边旁标上联系的类型(1:1、1:n或或m:n) n联系的属性:联系本身联系本身也是一种实体型也是一种实体型,也可以,也可以有属性。如果一个联系具有属性,则这些属性也要有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来用无向边与该联系连接起来 An Introduction to Database Systenm联系的表示方法联系的表示方法实体型实体型1联系名联系名实体型实体型2111:1联系联系实体型实体型1联系名联系名实体型实体型2mnm:

23、n联系联系实体型实体型1联系名联系名实体型实体型21n1:n联系联系An Introduction to Database Systenm联系的表示方法联系的表示方法(续续)实体型实体型1联系名联系名mn同一实体型内同一实体型内部的部的m:n联系联系实体型实体型1联系名联系名实体型实体型21m多个实体型间的多个实体型间的1:n联系联系实体型实体型3nAn Introduction to Database Systenm联系的表示方法示例联系的表示方法示例班级班级班级班级-班长班长班长班长111:1联系联系课程课程选修选修学生学生mnm:n联系联系班级班级组成组成学生学生1n1:n联系联系An

24、Introduction to Database Systenm联系的表示方法示例联系的表示方法示例(续续)职工职工领导领导1n同一实体型内同一实体型内部的部的1:n联系联系课程课程讲授讲授教师教师1m多个实体型间的多个实体型间的1:n联系联系参考书参考书nAn Introduction to Database Systenm联系属性的表示方法联系属性的表示方法课程课程选修选修学生学生mn成绩成绩An Introduction to Database SystenmE-R图图(续续)-学习管理学习管理E-R图图An Introduction to Database Systenm 1.2.4

25、常用数据模型常用数据模型n数据库领域研究的逻辑数据模型有:n层次模型(hierarchical model)n网状模型(network model)n关系模型(relational model)n面向对象模型(即OO模型)nXML模型n对象关系模型(object relational model)An Introduction to Database Systenm 1.2.4 常用数据模型(选讲)常用数据模型(选讲)n非关系模型n层次模型(层次模型(Hierarchical Model)n网状模型网状模型(Network Model )n数据结构:以基本层次联系为基本单位 基本层次联系:两个

26、记录以及它们之间的一对多(包括一基本层次联系:两个记录以及它们之间的一对多(包括一对一对一)的联系的联系 (见见P20)An Introduction to Database Systenm常用数据模型常用数据模型(续续)n关系模型(Relational Model) n数据结构:表n面向对象模型(Object Oriented Model)n数据结构:对象An Introduction to Database Systenm 1.2 数据模型数据模型 1.2. 1两类数据模型 1.2.2 数据模型的组成要素 1.2.3 概念模型 1.2.4 常用数据模型 1.2.5 层次模型 1.2.6 网

27、状模型 1.2.7 关系模型已基本不用,不讲已基本不用,不讲An Introduction to Database Systenm 1.2.7 关系模型关系模型1. 关系数据模型的数据结构 2. 关系数据模型的操纵3. 关系数据模型的完整性约束 4. 关系数据模型的存储结构 5. 关系数据模型的优缺点6. 典型的关系数据库系统 An Introduction to Database Systenm关系模型关系模型n最重要的一种数据模型。也是目前主要采用的数据模型n1970年由美国IBM公司San Jose研究室的研究员E.F.Codd提出n本课程的重点是关系模型关系模型Edgar Frank

28、Codd 埃德加埃德加.科德科德An Introduction to Database Systenm一、关系数据模型的数据结构一、关系数据模型的数据结构 n在用户观点用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。学学生生登登记记表表学学 号号姓姓 名名年年 令令性性 别别系系 名名年年 级级95004王王小小明明19女女社社会会学学9595006黄黄大大鹏鹏20男男商商品品学学9595008张张文文斌斌18女女法法律律学学95An Introduction to Database Systenm关系模型的基本概念关系模型的基本概念n关系(Relation)一个关系对应通常

29、说的一张表。(第2章有更严格的定义)n元组(Tuple)表中的一行即为一个元组。n属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名属性名。An Introduction to Database Systenm关系模型的基本概念关系模型的基本概念n码(Key):也称为码键表中的某个属性组属性组,它可以唯一确定一个元组。n域(Domain)属性的取值范围。n分量元组中的一个属性值。n关系模式定义定义:关系模式是对关系的描述。一般表示为关系名(属性1,属性2,属性n)。如:学生(学号,姓名,年龄,性别,系,年级)An Introduction to Database

30、Systenm关系数据模型的数据结构关系数据模型的数据结构(续)续)n实体及实体间联系的表示方法n实体型实体型:直接用关系(表)表示。:直接用关系(表)表示。n属性属性:用属性名表示。:用属性名表示。n一对一联系一对一联系:隐含在实体对应的关系中。:隐含在实体对应的关系中。n一对多联系一对多联系:隐含在实体对应的关系中。:隐含在实体对应的关系中。(下例(下例1)n多对多联系多对多联系:直接用关系表示:直接用关系表示。 (下例(下例2)An Introduction to Database Systenm关系数据模型的数据结构关系数据模型的数据结构(续)续)例1学生、系、系与学生之间的一对多联系

31、:学生(学号,姓名,年龄,性别,学生(学号,姓名,年龄,性别,系号系号,年级),年级)系系 (系号,系名,办公地点,联系电话系号,系名,办公地点,联系电话)An Introduction to Database Systenm关系数据模型的数据结构关系数据模型的数据结构(续)续)例2学生、课程、学生与课程之间的多对多联系: 学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)课程(课程号,课程名,学分)选修(学号,课程号,成绩)选修(学号,课程号,成绩)An Introduction to Database Systenm关系数据模型

32、的数据结构(续)关系数据模型的数据结构(续) 见见P30n关系必须是规范化的,即要求关系满足一定的规范条件最基本的规范条件:最基本的规范条件:关系的每一个分量必须是一个不关系的每一个分量必须是一个不可分的数据项。可分的数据项。(1NF) An Introduction to Database Systenm2.关系数据模型的数据操纵关系数据模型的数据操纵n查询、插入、删除、修改n数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合n存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么做”An Introduction to Database Systenm3.关系数据模型

33、的完整性约束关系数据模型的完整性约束n实体完整性(第2章详细介绍)n参照完整性(第2章详细介绍)n用户定义的完整性(第2章详细介绍)An Introduction to Database Systenm4.关系数据模型的存储结构关系数据模型的存储结构n表以文件形式存储n有的DBMS一个表对应一个操作系统文件n有的DBMS自己设计文件结构An Introduction to Database Systenm5.关系数据模型的优缺点关系数据模型的优缺点n优点1、建立在严格的数学概念基础上(、建立在严格的数学概念基础上(关系代数关系代数)2、概念单一。数据结构简单、清晰,用户易懂易用、概念单一。数据

34、结构简单、清晰,用户易懂易用n实体和各类联系都用关系来表示。n对数据的检索结果也是关系。3、关系模型的存取路径对用户透明关系模型的存取路径对用户透明n具有更高的数据独立性,更好的安全保密性n简化了程序员的工作和数据库开发建设的工作An Introduction to Database Systenm关系模型的优缺点(续)关系模型的优缺点(续)n缺点存取路径对用户透明导致查询效率往往不如非存取路径对用户透明导致查询效率往往不如非关系数据模型关系数据模型为提高性能,必须对用户的为提高性能,必须对用户的查询请求进行优化查询请求进行优化增加了开发数据库管理系统的难度增加了开发数据库管理系统的难度An

35、Introduction to Database Systenm6. 典型的关系数据库系统典型的关系数据库系统nORACLEnSYBASEnINFORMIXnDB/2ndBASEnFoxPronVisual FoxPronSQL ServernMySQLAn Introduction to Database Systenm1.3 数据库系统结构数据库系统结构1.3.1数据库系统内部的模式结构 从数据库管理系统角度看1.3.2数据库系统外部的体系结构从数据库最终用户角度看An Introduction to Database Systenm1.3.1 数据库系统的模式结构数据库系统的模式结构n数

36、据库系统模式的概念n数据库系统的三级模式结构n数据库的二级映象功能与数据独立性An Introduction to Database Systenm一、数据库系统模式的概念一、数据库系统模式的概念n“型” 和“值” 的概念n型(Type)对某一类数据的结构和属性的说明n值(Value)是型的一个具体赋值例如:学生记录例如:学生记录记录型:记录型: (学号,姓名,性别,系别,年龄,籍贯)(学号,姓名,性别,系别,年龄,籍贯)该记录型的一个记录值:该记录型的一个记录值: (900201,李明,男,计算机,李明,男,计算机,22,江苏),江苏)An Introduction to Database

37、Systenm数据库系统模式的概念(续)数据库系统模式的概念(续)n模式(Schema)n数据库逻辑结构和特征的描述数据库逻辑结构和特征的描述n是型的描述是型的描述n反映的是数据的结构及其联系反映的是数据的结构及其联系n模式是相对稳定的模式是相对稳定的n模式的一个实例(Instance)n模式的一个模式的一个具体值具体值n反映数据库某一时刻的状态反映数据库某一时刻的状态n同一个模式可以有很多实例同一个模式可以有很多实例n实例随数据库中数据的更新而变动实例随数据库中数据的更新而变动An Introduction to Database Systenm1.3.1 数据库系统的模式结构数据库系统的模

38、式结构n数据库系统模式的概念n数据库系统的三级模式结构n数据库的二级映象功能与数据独立性An Introduction to Database Systenm二、数据库系统的三级模式结构二、数据库系统的三级模式结构 图图1.28 数据库的三级模式结构数据库的三级模式结构应用应用A外模式外模式/模式映像模式映像应用应用B应用应用C应用应用E应用应用F外模式外模式1外模式外模式2外模式外模式3应用应用D应用应用G模式模式内模式内模式数据库数据库模式模式/内模式映像内模式映像An Introduction to Database Systenm1数据库系统的模式(数据库系统的模式(Schema)n模

39、式(也称逻辑模式也称逻辑模式)n数据库中数据库中全体全体数据的逻辑结构和特征的描述数据的逻辑结构和特征的描述n所有用户的公共数据视图,综合了所有用户的需求所有用户的公共数据视图,综合了所有用户的需求n一个数据库只有一个模式一个数据库只有一个模式n模式的地位:是数据库系统模式结构的中间层n与数据的物理存储细节和硬件环境无关与数据的物理存储细节和硬件环境无关n与具体的应用程序、开发工具及高级程序设计语言无关与具体的应用程序、开发工具及高级程序设计语言无关n模式的定义n数据的逻辑结构(数据项的名字、类型、取值范围等)数据的逻辑结构(数据项的名字、类型、取值范围等)n数据之间的联系数据之间的联系n数据

40、有关的安全性、完整性要求等数据有关的安全性、完整性要求等An Introduction to Database Systenm2. 外模式(外模式(External Schema)n外模式(也称子模式或用户模式)n数据库用户(包括应用程序员和最终用户)使用的数据库用户(包括应用程序员和最终用户)使用的局部数据局部数据的逻辑结构和特征的描述的逻辑结构和特征的描述n数据库用户的数据视图,是与某一应用有关的数据数据库用户的数据视图,是与某一应用有关的数据的逻辑表示的逻辑表示An Introduction to Database Systenm外模式(续)外模式(续)n外模式的地位:介于模式与应用之间

41、n模式与外模式的关系:一对多模式与外模式的关系:一对多n外模式通常是模式的子集外模式通常是模式的子集n一个数据库可以有多个外模式。反映了不同的用户的应一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求用需求、看待数据的方式、对数据保密的要求n对模式中同一数据,在外模式中的结构、类型、长度、对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同保密级别等都可以不同n外模式与应用的关系:一对多外模式与应用的关系:一对多n同一外模式也可以为某一用户的多个应用系统所使用,同一外模式也可以为某一用户的多个应用系统所使用,n但一个应用程序只能使用一个外模

42、式但一个应用程序只能使用一个外模式。An Introduction to Database Systenm外模式(续)外模式(续)n外模式的用途保证数据库安全性的一个有力措施。保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据每个用户只能看见和访问所对应的外模式中的数据An Introduction to Database Systenm3内模式(内模式(Internal Schema)n内模式(也称存储模式)n是数据物理结构和存储方式的描述是数据物理结构和存储方式的描述n是数据在数据库内部的表示方式是数据在数据库内部的表示方式n记录的存储方式(顺序存储,按照记录的存

43、储方式(顺序存储,按照B+树结构存树结构存储,按储,按hash方法存储)方法存储)n索引的组织方式索引的组织方式n数据是否压缩存储数据是否压缩存储n数据是否加密数据是否加密n数据存储记录结构的规定数据存储记录结构的规定n一个数据库只有一个内模式一个数据库只有一个内模式An Introduction to Database Systenm1.3.1 数据库系统的模式结构数据库系统的模式结构n数据库系统模式的概念n数据库系统的三级模式结构n数据库的二级映象功能与数据独立性An Introduction to Database Systenm三级模式与二级映象三级模式与二级映象n三级模式是对数据的三

44、个抽象级别n二级映象在DBMS内部实现这三个抽象层次的联系和转换An Introduction to Database Systenm数据库系统的三级模式结构数据库系统的三级模式结构 图图1.28 数据库的三级模式结构数据库的三级模式结构应用应用A外模式外模式/模式映像模式映像应用应用B应用应用C应用应用E应用应用F外模式外模式1外模式外模式2外模式外模式3应用应用D应用应用G模式模式内模式内模式数据库数据库模式模式/内模式映像内模式映像An Introduction to Database Systenm1外模式模式映象外模式模式映象n定义外模式与模式之间的对应关系n每一个外模式都对应一个外

45、模式模式映象n映象定义通常包含在各自外模式的描述中An Introduction to Database Systenm外模式模式映象的用途外模式模式映象的用途保证数据的逻辑独立性n当模式改变时,数据库管理员当模式改变时,数据库管理员修改有关的外修改有关的外模式模式映象模式模式映象,使外模式保持不变,使外模式保持不变n应用程序是依据数据的外模式编写的,从而应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻应用程序不必修改,保证了数据与程序的逻辑独立性,简称辑独立性,简称数据的逻辑独立性数据的逻辑独立性。An Introduction to Database Syste

46、nm2模式内模式映象模式内模式映象n模式内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的等n数据库中模式内模式映象是唯一的n该映象定义通常包含在模式描述中An Introduction to Database Systenm模式内模式映象的用途模式内模式映象的用途保证数据的物理独立性n当数据库的存储结构改变了(例如选用了另当数据库的存储结构改变了(例如选用了另一种存储结构),一种存储结构),数据库管理员修改模式数据库管理员修改模式内模式映象内模式映象,使模式保持不变,使模式保持不变n应用程序不受影响。保证了数据与程序的物应用程序不受影响。保证

47、了数据与程序的物理独立性,简称理独立性,简称数据的物理独立性数据的物理独立性。An Introduction to Database Systenm1.3 数据库系统结构数据库系统结构n1.3.1数据库系统内部的模式结构 n从数据库管理系统角度看n1.3.2数据库系统外部的体系结构n从数据库最终用户角度看An Introduction to Database Systenm1.3.2 数据库系统外部的体系结构数据库系统外部的体系结构n单用户结构n主从式结构n分布式结构n客户/服务器结构 C/Sn浏览器/服务器结构 B/Sn浏览器/应用服务器/数据库服务器多层结构An Introduction

48、to Database Systenm客户服务器结构的数据库系统客户服务器结构的数据库系统n把DBMS功能和应用分开n网络中某个(些)结点上的计算机专门用于网络中某个(些)结点上的计算机专门用于执行执行DBMSDBMS功能,称为数据库服务器,简称功能,称为数据库服务器,简称服服务器务器n其他结点上的计算机安装其他结点上的计算机安装DBMSDBMS的外围应用开的外围应用开发工具,用户的应用系统,称为发工具,用户的应用系统,称为客户机客户机An Introduction to Database Systenm客户服务器数据库系统客户服务器数据库系统 CS结构的演变:结构的演变: 两层两层C/SC/

49、S结构:结构: 表示层:负责显示 功能层:实现应用逻辑 数据层:负责数据管理客户机DB 应用 服务器 DB 服务器客户机DB第一层 第二层 服务器 三层三层C/SC/S结构结构 An Introduction to Database Systenm客户服务器结构的优点客户服务器结构的优点n客户端的用户请求被传送到数据库服务器,数据库客户端的用户请求被传送到数据库服务器,数据库服务器进行处理后,只将结果返回给用户,从而显服务器进行处理后,只将结果返回给用户,从而显著减少了数据传输量著减少了数据传输量n数据库更加开放数据库更加开放n客户与服务器一般都能在多种不同的硬件和软件客户与服务器一般都能在多

50、种不同的硬件和软件平台上运行平台上运行n可以使用不同厂商的数据库应用开发工具可以使用不同厂商的数据库应用开发工具An Introduction to Database Systenm5、浏览器、浏览器/应用服务器应用服务器/数据库服务器结构数据库服务器结构n客户端:n浏览器软件、用户界面浏览器软件、用户界面 浏览器的界面统一,广大用户容易掌握浏览器的界面统一,广大用户容易掌握 大大减少了培训时间与费用。大大减少了培训时间与费用。n服务器端分为两部分:nWeb服务器、应用服务器、数据库服务器等服务器、应用服务器、数据库服务器等 大大减少了系统开发和维护代价大大减少了系统开发和维护代价 能够支持数

51、万甚至更多的用户能够支持数万甚至更多的用户An Introduction to Database Systenm浏览器浏览器/应用服务器应用服务器/数据库服务器结构数据库服务器结构 WebWeb上的数据库应用是典型上的数据库应用是典型 B/SB/S结构结构 WWW 浏览器DB WWW 服务器DB服务器中间件InternetInternetAn Introduction to Database Systenm1.4 数据库系统的组成数据库系统的组成n数据库n数据库管理系统(及其开发工具)n应用系统n数据库管理员(DBA)n用户下面简单介绍这几部分的内容:An Introduction to Da

52、tabase Systenm一、硬件平台及数据库一、硬件平台及数据库n数据库系统对硬件资源的要求(1) 足够大的内存n操作系统操作系统nDBMS的核心模块的核心模块n数据缓冲区数据缓冲区n应用程序应用程序An Introduction to Database Systenm数据库系统对硬件资源的要求数据库系统对硬件资源的要求 (2) 足够大的外存n 磁盘n操作系统操作系统nDBMSn应用程序应用程序n数据库及其备份数据库及其备份n 光盘、磁带、软盘n数据备份数据备份(3) 较高的通道能力,提高数据传送率An Introduction to Database Systenm二、软件二、软件nDB

53、MSn操作系统n与数据库接口的高级语言及其编译系统n以DBMS为核心的应用开发工具n为特定应用环境开发的数据库应用系统数据库应用系统An Introduction to Database Systenm三、人员三、人员n数据库管理员n系统分析员n数据库设计人员n应用程序员n最终用户An Introduction to Database Systenm三、人员三、人员 DB应用系统应用系统外模式外模式用用 户户图图1.30 数据库系统中相关人员的数据视图数据库系统中相关人员的数据视图DBMSOS客户端客户端模式模式内模式内模式用用 户户应用程序员应用程序员DBA系统分析员系统分析员数据抽象级别数据抽象级别软件系统层次软件系统层次An Introduction to Database Systenm1. 数据库管理员数据库管理员(DBA)的职责的职责n决定数据库中的信息内容和结构n决定数据库的存储结构和存取策

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论