数据库概论第一章_第1页
数据库概论第一章_第2页
数据库概论第一章_第3页
数据库概论第一章_第4页
数据库概论第一章_第5页
已阅读5页,还剩159页未读 继续免费阅读

下载本文档

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

文档简介

1、2022-5-10An Introduction to Database System1洛阳师范学院信息技术学院洛阳师范学院信息技术学院数据库系统概论数据库系统概论 An Introduction to Database System常志玲常志玲135269480962022-5-10An Introduction to Database System2考试成绩考试成绩2022-5-10An Introduction to Database System3教材及参考书教材及参考书(1)(1) 教材教材 王珊王珊,萨师煊:数据库系统概论,萨师煊:数据库系统概论(第四版第四版) 高等教育出版社,高

2、等教育出版社,2006.52022-5-10An Introduction to Database System4教材及参考书教材及参考书(2)(2)2022-5-10An Introduction to Database System5学习方式学习方式2022-5-10An Introduction to Database System62022-5-10An Introduction to Database System7中国计算机学会数据库专委会中国计算机学会数据库专委会vCCF-DBS (China Computer Federation DataBase Society)v前身:数据

3、库学组v升级:1999年8月vwww.ccf-2022-5-10An Introduction to Database System8内容安排内容安排(1) 基础篇基础篇 第一章第一章 绪论绪论 第二章第二章 关系数据库关系数据库 第三章第三章 关系数据库标准语言关系数据库标准语言SQL 第四章第四章 数据库安全性数据库安全性 第五章第五章 数据库完整性数据库完整性 设计与应用开发篇设计与应用开发篇 第六章第六章 关系数据理论数据库设计关系数据理论数据库设计 第七章第七章 数据库设计数据库设计 第八章第八章 数据库编程数据库编程2022-5-10An Introduction to Datab

4、ase System9内容安排内容安排(2) 系统篇系统篇 第九章第九章 关系查询处理和查询优化关系查询处理和查询优化 第十章第十章 数据库恢复技术数据库恢复技术 第十一章第十一章 并发控制并发控制2022-5-10An Introduction to Database System10数据库系统概论数据库系统概论An Introduction to Database Systems第一章第一章 绪论绪论2022-5-10An Introduction to Database System112022-5-10An Introduction to Database System12第一章第一章

5、 绪论绪论1.1 数据库系统概述数据库系统概述1.2 数据模型数据模型1.3 数据库系统结构数据库系统结构1.4 数据库系统的组成数据库系统的组成1.5 小结小结2022-5-10An Introduction to Database System13第一章第一章 绪论绪论1.1 数据库系统概述数据库系统概述 1.1.1 四个基本概念四个基本概念 1.1.2 数据管理技术的产生和发展数据管理技术的产生和发展 1.1.3 数据库系统的特点数据库系统的特点 2022-5-10An Introduction to Database System141.1.1 四个基本概念四个基本概念2022-5-1

6、0An Introduction to Database System15一、数据一、数据2022-5-10An Introduction to Database System16数据举例数据举例v 数据的含义称为数据的语义,数据的含义称为数据的语义,数据数据与其与其语义语义是不可分的。是不可分的。 例如例如 93是一个数据是一个数据语义语义1:学生某门课的成绩:学生某门课的成绩语义语义2:某人的体重:某人的体重语义语义3:计算机系:计算机系2003级学生人数级学生人数语义语义4:请同学给出。:请同学给出。2022-5-10An Introduction to Database System1

7、7数据举例数据举例2022-5-10An Introduction to Database System18二、数据库二、数据库2022-5-10An Introduction to Database System19三、数据库管理系统三、数据库管理系统2022-5-10An Introduction to Database System20DBMS的主要功能的主要功能 数据定义功能数据定义功能 提供数据定义语言(Data Definition Language, DDL) 定义数据库中的数据对象 数据组织、存储和管理数据组织、存储和管理 分类组织、存储和管理各种数据(数据字典、用户数据、数据

8、的存取路径等) 确定组织数据的文件结构和存取方式 实现数据之间的联系 提供多种存取方法提高存取效率(索引查找、Hash、顺序等)2022-5-10An Introduction to Database System21DBMS的主要功能的主要功能 数据操纵功能数据操纵功能 提供数据操纵语言(Data Manipulation Language, DML) 实现对数据库的基本操作 (查询、插入、删除和修改) 数据库的事务管理和运行管理数据库的事务管理和运行管理 数据库在建立、运行和维护时由DBMS统一管理和控制保证数据的安全性、完整性、多用户对数据的并发使用发生故障后的系统恢复用户是用用户是用D

9、ML还是还是DDL完成下列任务?完成下列任务?a.改变客户地址改变客户地址b.定义目录表定义目录表c.输入一个新员工的信息输入一个新员工的信息2022-5-10An Introduction to Database System22DBMS的主要功能的主要功能 数据库的建立和维护功能数据库的建立和维护功能(实用程序实用程序) 数据库初始数据装载转换 数据库转储 介质故障恢复 数据库的重组织 性能监视分析等 其它功能其它功能 DBMS与网络中其它软件系统的通信 两个DBMS系统的数据转换 异构数据库之间的互访和互操作2022-5-10An Introduction to Database Sys

10、tem23四、数据库系统四、数据库系统2022-5-10An Introduction to Database System24 数据库数据库 应用系统应用系统应用开发工具 操作系统 数据库管理系数据库管理系统统 数据库管理员数据库管理员用户用户用户 数据库系统数据库系统分别分别举例举例Powerbuilder,Oracle,DB2,Sybase,mysql ,SQL serverDelphi, VB, Win2k, Linux, Unix。?2022-5-10An Introduction to Database System251.1 数据库系统概述数据库系统概述 1.1.1 四个基本概念

11、四个基本概念 1.1.2 数据管理技术的产生和发展数据管理技术的产生和发展 1.1.3 数据库系统的特点数据库系统的特点 2022-5-10An Introduction to Database System26数据管理技术的产生和发展数据管理技术的产生和发展v什么是数据管理 对数据进行分类、组织、编码、存储、检索和维护对数据进行分类、组织、编码、存储、检索和维护 数据处理的中心问题数据处理的中心问题v数据管理技术的发展过程 人工管理阶段人工管理阶段(20世纪世纪40年代中年代中-50年代中年代中) 文件系统阶段文件系统阶段(20世纪世纪50年代末年代末-60年代中年代中) 数据库系统阶段数据

12、库系统阶段(20世纪世纪60年代末年代末-现在现在)2022-5-10An Introduction to Database System27数据管理技术的产生和发展数据管理技术的产生和发展(续续)2022-5-10An Introduction to Database System28一、人工管理阶段一、人工管理阶段2022-5-10An Introduction to Database System29人工管理阶段人工管理阶段(续续)2022-5-10An Introduction to Database System30应用程序与数据的对应关系应用程序与数据的对应关系(人工管理阶段人工管

13、理阶段) 人工管理阶段应用程序与数据之间的对应关系 用户 1应用程序 1应用程序 2应用程序 3数据组 1数据组 2数据组 3用户 2应用程序 n数据组 n用户 m2022-5-10An Introduction to Database System31二、文件系统阶段二、文件系统阶段2022-5-10An Introduction to Database System32文件系统阶段文件系统阶段(续续)2022-5-10An Introduction to Database System33应用程序与数据的对应关系应用程序与数据的对应关系(文件系统阶段文件系统阶段)文件系统阶段应用程序与数据

14、之间的对应关系 用户 1应用程序 1应用程序 2应用程序 3数据文件 1数据文件 2数据文件 3用户 2应用程序 n数据文件 n用户 m文件管理系统2022-5-10An Introduction to Database System34v基本原因在于:数据的含义不明显。在文件系基本原因在于:数据的含义不明显。在文件系统中,统中,采用采用“按文件名访问,按记录存取按文件名访问,按记录存取”的的数据管理技术。数据管理技术。 文件系统中,数据为什么难以共享呢?文件系统中,数据为什么难以共享呢?2022-5-10An Introduction to Database System35如如:下一条记录

15、为例:下一条记录为例: 1005张三张三7006151800设计所设计所 一般用户怎能理解其含义呢!甚至连数据的创建一般用户怎能理解其含义呢!甚至连数据的创建者,在经过一段时间后,重新看到此记录时,也会感者,在经过一段时间后,重新看到此记录时,也会感到不可理解了。但如果数据的显示形式为:到不可理解了。但如果数据的显示形式为: 职工号职工号 姓名姓名 出生日期出生日期 工资工资 部门部门 1005 张三张三 700615 1800 设计所设计所 则数据的含义就比较清楚了,共享自然就容易了。则数据的含义就比较清楚了,共享自然就容易了。 2022-5-10An Introduction to Dat

16、abase System36v 定义数据时,能把数据的含义也定义进去;存储数定义数据时,能把数据的含义也定义进去;存储数据时,能一起存储数据的含义;显示数据时,能同时显示据时,能一起存储数据的含义;显示数据时,能同时显示数据的含义,数据的含义,就成了改进文件系统的关键。从而出现了数就成了改进文件系统的关键。从而出现了数据管理的新方式据管理的新方式数据库系统。在数据库系统中,数据数据库系统。在数据库系统中,数据以一种全新的方式以一种全新的方式数据库存储;管理数据库数据库存储;管理数据库的生成、的生成、修改、使用的是一种新的管理数据的软件修改、使用的是一种新的管理数据的软件数据库管理数据库管理系统

17、。系统。 2022-5-10An Introduction to Database System37三、数据库系统阶段三、数据库系统阶段2022-5-10An Introduction to Database System381.1 数据库系统概述数据库系统概述 1.1.1 四个基本概念四个基本概念 1.1.2 数据管理技术的产生和发展数据管理技术的产生和发展 1.1.3 数据库系统的特点数据库系统的特点 2022-5-10An Introduction to Database System39数据库系统特点数据库系统特点 数据的管理者:数据的管理者:DBMS 数据面向的对象:现实世界数据面向

18、的对象:现实世界 数据的共享程度:数据的共享程度:共享性高共享性高 数据的独立性数据的独立性:高度的物理独立性和一定的逻辑独立:高度的物理独立性和一定的逻辑独立性性 数据的结构化数据的结构化:整体结构化,数据存取粒度小:整体结构化,数据存取粒度小 数据控制能力数据控制能力:由:由DBMS统一管理和控制统一管理和控制2022-5-10An Introduction to Database System40用户 1应用程序 1应用程序 2应用程序 3用户 2应用程序 n用户 m数据库管理系统数据库2022-5-10An Introduction to Database System41补充说明补充

19、说明2022-5-10An Introduction to Database System42补充说明:数据独立性补充说明:数据独立性v物理独立性物理独立性 指用户的应用程序与存储在磁盘上的数据库中数据是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的相互独立的 当数据的物理存储改变了,应用程序不用改变当数据的物理存储改变了,应用程序不用改变v逻辑独立性逻辑独立性 指用户的应用程序与数据库的逻辑结构是相互独立的指用户的应用程序与数据库的逻辑结构是相互独立的 数据的逻辑结构改变了,用户程序也可以不变数据的逻辑结构改变了,用户程序也可以不变2022-5-10An Introduction

20、to Database System43补充说明:补充说明:DBMS对数据的控制功能对数据的控制功能v数据的安全性(数据的安全性(Security)保护)保护使每个用户只能按指定方式使用和处理指定数据,保护使每个用户只能按指定方式使用和处理指定数据,保护数据以防止不合法的使用造成的数据的泄密和破坏数据以防止不合法的使用造成的数据的泄密和破坏v数据的完整性(数据的完整性(Integrity)检查)检查将数据控制在有效的范围内,或保证数据之间满足一定将数据控制在有效的范围内,或保证数据之间满足一定的关系的关系v并发(并发(Concurrency)控制)控制对多用户的并发操作加以控制和协调,防止相互

21、干扰而对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果得到错误的结果v数据库恢复(数据库恢复(Recovery)将数据库从错误状态恢复到某一已知的正确状态将数据库从错误状态恢复到某一已知的正确状态2022-5-10An Introduction to Database System44第一章第一章 绪论绪论1.1 数据库系统概述数据库系统概述1.2 数据模型数据模型1.3 数据库系统结构数据库系统结构1.4 数据库系统的组成数据库系统的组成1.5 小结小结2022-5-10An Introduction to Database System45 1.2 数据模型数据模型 1.2.

22、1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型2022-5-10An Introduction to Database System46数据模型数据模型2022-5-10An Introduction to Database System47 1.2.1 两大类数据模型两大类数据模型v 数据模型分为两类(分属两个不同的层次)数据模型分为两类(分属两个不同的层次)(1) 概念模型概念模型 也称信息

23、模型,它是按也称信息模型,它是按用户的观点用户的观点来对数据和信息建来对数据和信息建模,用于数据库设计。模,用于数据库设计。 (2) 逻辑模型和物理模型逻辑模型和物理模型 主要包括网状模型、层次模型、关系模型、面向对象主要包括网状模型、层次模型、关系模型、面向对象模型等,按模型等,按计算机系统的观点计算机系统的观点对数据建模,用于对数据建模,用于DBMS实现。实现。是对数据最底层的抽象,描述数据在是对数据最底层的抽象,描述数据在系统内部系统内部的表示的表示方式和存取方法,在磁盘或磁带上的方式和存取方法,在磁盘或磁带上的存储方式存储方式和和存取方法存取方法。2022-5-10An Introdu

24、ction to Database System48两大类数据模型两大类数据模型 (续续)v客观对象的抽象过程客观对象的抽象过程-两步抽象两步抽象 现实世界中的客观对象抽象为现实世界中的客观对象抽象为概念模型概念模型; 把概念模型转换为某一把概念模型转换为某一DBMS支持的支持的数据模型数据模型。2022-5-10An Introduction to Database System49两大类数据模型两大类数据模型 (续续)DBMS支持的数据模型支持的数据模型概念模型概念模型认识认识抽象抽象信息世界信息世界机器世界机器世界现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程现实世现实世界界现

25、实世界现实世界 概念模型概念模型数据库设计人员完成数据库设计人员完成逻辑模型逻辑模型 物理模型物理模型由由DBMS完成完成概念模型概念模型 逻辑模型逻辑模型数据库设计人员完成数据库设计人员完成(协助协助)2022-5-10An Introduction to Database System50 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型2022-5-10An

26、 Introduction to Database System51 1.2.2 数据模型的组成要素数据模型的组成要素v数据结构数据结构 v数据操作数据操作 v完整性约束条件完整性约束条件2022-5-10An Introduction to Database System52数据模型组成要素数据模型组成要素v数据结构数据结构描述数据库的组成以及对象之间的联系描述数据库的组成以及对象之间的联系与数据类型、内容、性质有关的对象与数据类型、内容、性质有关的对象与数据之间联系有关的对象与数据之间联系有关的对象是对系统静态特性的描述是对系统静态特性的描述v数据操作数据操作对数据库中各种对象(型)的实例

27、(值)允许执行的操作及有关的操作对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则规则检索、更新(包括插入、删除、修改)检索、更新(包括插入、删除、修改) 是对系统动态特性的描述是对系统动态特性的描述v数据的约束条件数据的约束条件一组完整性规则的集合一组完整性规则的集合是数据及其联系所具有的制约和储存规则,用以限定符合数据模型是数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容的数据库状态以及状态的变化,以保证数据的正确、有效、相容2022-5-10An Introduction to Database System

28、53 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型2022-5-10An Introduction to Database System54 1.2.3 概念模型概念模型2022-5-10An Introduction to Database System55概念模型概念模型2022-5-10An Introduction to Database System

29、56一、信息世界中的基本概念一、信息世界中的基本概念2022-5-10An Introduction to Database System57信息世界中的基本概念信息世界中的基本概念(续续)2022-5-10An Introduction to Database System58信息世界中的基本概念信息世界中的基本概念(续续)(7) 联系(联系(Relationship) 现实世界中事物内部以及事物之间存在联系,在信息世界现实世界中事物内部以及事物之间存在联系,在信息世界 中反映为中反映为实体内部的联系实体内部的联系和和实体之间的联系实体之间的联系。 实体内部实体内部的联系通常是指组成实体的的

30、联系通常是指组成实体的各属性各属性之间的之间的联系联系 实体之间实体之间的联系通常是指不同实体集之间的联系的联系通常是指不同实体集之间的联系学生实体和课程实体之间通过学生实体和课程实体之间通过选修选修联系(实体之联系(实体之间)间)2022-5-10An Introduction to Database System59二、两个实体型之间的联系二、两个实体型之间的联系实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B用图形来表示两个实体型之间的这三类联系用图形来表示两个实

31、体型之间的这三类联系 2022-5-10An Introduction to Database System60二、两个实体型之间的联系(续)二、两个实体型之间的联系(续) v一对一联系(1:1) 实例1一个班级只有一个正班长一个班级只有一个正班长一个班长只在一个班中任职一个班长只在一个班中任职班级班级班级班级-班长班长班长班长111:1联系联系2022-5-10An Introduction to Database System61二、两个实体型之间的联系(续)二、两个实体型之间的联系(续) 座位E1乘客E22022-5-10An Introduction to Database Syste

32、m62两个实体型之间的联系两个实体型之间的联系 (续续)v一对多联系(1:n) 实例一个班级中有若干名学生,一个班级中有若干名学生,每个学生只在一个班级中学习每个学生只在一个班级中学习班级班级组成组成学生学生1n1:n联系联系2022-5-10An Introduction to Database System63 定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中有有n个实体(个实体(n0)与之联系,反之,对于实体)与之联系,反之,对于实体集集B中的每一个实体,实体集中的每一个实体,实体集A中至多只有一个中至多只有一个实体与之联系,则称实体与之联系,则称实

33、体集实体集A与实体集与实体集B有一对有一对多联系,记为多联系,记为1:n两个实体型之间的联系两个实体型之间的联系 (续续) 实体集E1 实体集E2E1E2车间工人2022-5-10An Introduction to Database System64两个实体型之间的联系两个实体型之间的联系 (续续)v多对多联系(m:n) 实例课程与学生之间的联系:课程与学生之间的联系:一门课程同时有若干个学生选修一门课程同时有若干个学生选修一个学生可以同时选修多门课程一个学生可以同时选修多门课程课程课程选修选修学生学生mnm:n联系联系2022-5-10An Introduction to Database

34、 System65 定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实个实体(体(n0)与之联系,反之,对于实体集)与之联系,反之,对于实体集B中的每一个中的每一个实体,实体集实体,实体集A中也有中也有m个实体(个实体(m0)与之联系,则)与之联系,则称实体集称实体集A与实体与实体B具有多对多联系,记为具有多对多联系,记为m:n两个实体型之间的联系两个实体型之间的联系 (续续)2022-5-10An Introduction to Database System66两个实体型之间的联系两个实体型之间的联系 (续续)2022-5-10An Intro

35、duction to Database System67v两个实体集之间的联系究竟是属于两个实体集之间的联系究竟是属于哪一类哪一类,不仅,不仅与与实体集实体集有关,还与有关,还与联系的内容联系的内容有关。有关。v例如:主教练集与队员集之间,例如:主教练集与队员集之间, 若对于若对于指导指导关系来说,具有关系来说,具有一对多一对多的联系;的联系; 而对于而对于朋友朋友关系来说,就应是关系来说,就应是多对多多对多的联系的联系 两个实体型之间的联系两个实体型之间的联系 (续续)2022-5-10An Introduction to Database System68三、两个以上实体型之间的联系三、两

36、个以上实体型之间的联系v两个以上实体型之间一对多联系 若实体集若实体集E1,E2,.,En存在联系,对于实体集存在联系,对于实体集Ej(j=1,2,.,i-1,i+1,.,n)中的给定实体,)中的给定实体,最多只和最多只和Ei中的一个实体相联系,则我们说中的一个实体相联系,则我们说Ei与与E1,E2,.,Ei-1,Ei+1,.,En之间的联系是一对多的之间的联系是一对多的2022-5-10An Introduction to Database System69两个以上实体型之间的联系两个以上实体型之间的联系(续续)v实例 课程、教师与参考书三个实体型课程、教师与参考书三个实体型一门课程可以有若

37、干个教师讲授,一门课程可以有若干个教师讲授,使用若干本参考书,使用若干本参考书,每一个教师只讲授一门课程,每一个教师只讲授一门课程,每一本参考书只供一门课程使用每一本参考书只供一门课程使用课程课程讲授讲授教师教师1m两个以上实体型间两个以上实体型间1:n联系联系参考书参考书n2022-5-10An Introduction to Database System70课堂思考课堂思考 供应商供应商项项 目目零零 件件供供 应应2022-5-10An Introduction to Database System71两个以上实体型之间的联系两个以上实体型之间的联系(续续)v 两个以上实体型间的多对多

38、联系 实例 供应商、项目、零件三个实体型供应商、项目、零件三个实体型一个供应商可以供给多个项目多种零件一个供应商可以供给多个项目多种零件每个项目可以使用多个供应商供应的零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给每种零件可由不同供应商供给供应商供应商供应供应项目项目mp两个以上实体型间两个以上实体型间m:n联系联系零件零件n2022-5-10An Introduction to Database System72两个以上实体型之间的联系两个以上实体型之间的联系(续续)v 两个以上实体型间的多对多联系 实例 学生、课程、教室三个实体型学生、课程、教室三个实体型一个学生可以在

39、多个教室上多门课程一个学生可以在多个教室上多门课程每门课程可以有多个学生上课每门课程可以有多个学生上课每个教室可给多个学生上课每个教室可给多个学生上课思考思考:两两之间的多对多联系两两之间的多对多联系学生学生上课上课教室教室mp两个以上实体型间两个以上实体型间m:n联系联系课程课程n2022-5-10An Introduction to Database System73四、单个实体型内的联系四、单个实体型内的联系v 一对多联系 实例 职工实体型内部具有领导与被领导的联系职工实体型内部具有领导与被领导的联系某一职工(干部)某一职工(干部)“领导领导”若干名职工若干名职工一个职工仅被另外一个职工

40、直接领导一个职工仅被另外一个职工直接领导这是一对多的联系这是一对多的联系v一对一联系 请举例职工职工领导领导1n单个实体型内部单个实体型内部1:n联系联系2022-5-10An Introduction to Database System74单个实体型内的联系单个实体型内的联系实体型实体型1联系名联系名mn单个实体型内的单个实体型内的m:n联系联系v多对多联系请举例2022-5-10An Introduction to Database System75五、五、 概念模型的一种表示方法概念模型的一种表示方法v实体联系方法实体联系方法(E-R方法方法)v(Entity-Relationship

41、 Approach) 1976年由年由P.P.S.Chen提出提出 用用E-R图来描述现实世界的概念模型图来描述现实世界的概念模型 E-R方法也称为方法也称为E-R模型模型2022-5-10An Introduction to Database System76E-R图图v实体型用矩形表示,矩形框内写明实体名。v属性用椭圆形表示,并用无向边将其与相应的实体连接起来学生学生教师教师学生学生学号学号年龄年龄性别性别姓名姓名2022-5-10An Introduction to Database System77E-R图图(续续)v联系 联系本身: 用用菱形菱形表示,菱形框内写明表示,菱形框内写明联

42、系名联系名,并用无向边分,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系别与有关实体连接起来,同时在无向边旁标上联系的类型(的类型(1:1、1:n或或m:n) 2022-5-10An Introduction to Database System78联系的表示方法联系的表示方法实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B2022-5-10An Introduction to Database System79联系的表示方法示例联系的表示方法示例班级班级班级

43、班级-班长班长班长班长111:1联系联系课程课程选修选修学生学生mnm:n联系联系班级班级组成组成学生学生1n1:n联系联系2022-5-10An Introduction to Database System80联系的属性联系的属性课程课程选修选修学生学生mn成绩成绩v联系的属性:联系本身也是一种联系本身也是一种实体型实体型,也,也 可以有可以有属性属性。如果一个联系具。如果一个联系具有属性,则这些属性也要用无有属性,则这些属性也要用无向边与该联系连接起来向边与该联系连接起来 2022-5-10An Introduction to Database System81六、一个实例六、一个实例用

44、E-R图表示某个工厂的概念模型v 实体 仓库: 仓库号、面积、电话号码 零件 :零件号、名称、规格、单价、描述 供应商:供应商号、姓名、地址、电话号码、帐号 项目:项目号、预算、开工日期 职工:职工号、姓名、年龄、职称 2022-5-10An Introduction to Database System82一个实例一个实例2022-5-10An Introduction to Database System83工厂物资管理工厂物资管理实体及其属性图实体及其属性图 仓库号仓库号面积面积电话号电话号职工号职工号姓名姓名仓库仓库职工职工2022-5-10An Introduction to Dat

45、abase System84工厂物资管理工厂物资管理实体及其属性图实体及其属性图 零件零件号号名名称称规规格格单单价价描描述述零零 件件项目号项目号预算预算开工日期开工日期项目项目供 应 商供 应 商号号电话电话号号账账号号地地址址姓姓名名供应商供应商2022-5-10An Introduction to Database System85工厂物资管理实体及其联系图工厂物资管理实体及其联系图供应商供应商职工职工仓库仓库零件零件项目项目供应供应量量库存库存量量供供应应领领导导库库存存工工作作P1n nmm1nn2022-5-10An Introduction to Database System

46、86完整的完整的E-R图图年年龄龄职职称称电话电话号号电话电话号号职工职工号号库存库存量量项目项目号号零件零件号号打开日打开日期期仓库仓库号号供应商供应商号号地地址址姓姓名名账账号号供应供应量量名名称称描描述述规规格格预预算算面面积积姓姓名名零件零件项目项目仓库仓库供应商供应商职工职工供供 应应库库 存存 领领导导工工作作单单价价1nnnpnmm12022-5-10An Introduction to Database System87实例练习实例练习v实体 系、班级、学生、教研室、教师、课程v给出概念模型:ER图2022-5-10An Introduction to Database Sys

47、tem88 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型2022-5-10An Introduction to Database System89 1.2.4 最常用的数据模型最常用的数据模型v非关系模型 层次模型层次模型(Hierarchical Model) 网状模型网状模型(Network Model)v关系模型(Relational Model) v面

48、向对象模型(Object Oriented Model)v对象关系模型(Object Relational Model)2022-5-10An Introduction to Database System901.2.5 层次模型层次模型v 层次模型是数据库系统中层次模型是数据库系统中出现的数据模型出现的数据模型 v 层次数据库系统的典型代表是层次数据库系统的典型代表是IBM公司的公司的IMS(Information Management System)数据库管理系统)数据库管理系统v 层次模型用层次模型用来表示各类实体以及实体间的来表示各类实体以及实体间的联系联系 2022-5-10An I

49、ntroduction to Database System91层次模型层次模型v 满足下面两个条件的基本层次联系的集合为层次模型满足下面两个条件的基本层次联系的集合为层次模型 有且只有一个结点没有双亲结点,这个结点称为根结点有且只有一个结点没有双亲结点,这个结点称为根结点 根以外的其它结点有且只有一个双亲结点根以外的其它结点有且只有一个双亲结点v 层次模型中的几个术语层次模型中的几个术语 根结点,双亲结点,兄弟结点,叶结点根结点,双亲结点,兄弟结点,叶结点根结点根结点兄弟结点兄弟结点 叶结点叶结点兄弟结点兄弟结点 叶结点叶结点叶结点叶结点R2R1R3R4R52022-5-10An Intro

50、duction to Database System92层次数据模型的数据结构层次数据模型的数据结构(续续)v层次模型的特点: 结点的双亲是唯一的结点的双亲是唯一的 只能只能直接直接处理一对多的实体联系处理一对多的实体联系 每个记录类型可以定义一个排序字段,也称为码字段每个记录类型可以定义一个排序字段,也称为码字段 任何记录值只有按其路径查看时,才能显出它的全部意义任何记录值只有按其路径查看时,才能显出它的全部意义 没有一个子女记录值能够脱离双亲记录值而独立存在没有一个子女记录值能够脱离双亲记录值而独立存在2022-5-10An Introduction to Database System9

51、3层次数据模型的数据结构层次数据模型的数据结构(续续)图1.17 教员学生层次数据库模型 根结点根结点记录型系的子女结点记录型系的子女结点记录型教员的双亲结点记录型教员的双亲结点叶结点叶结点叶结点叶结点字段字段2022-5-10An Introduction to Database System94层次数据模型的数据结构层次数据模型的数据结构(续续)图1.18 教员学生层次数据库的一个值 2022-5-10An Introduction to Database System95 行政划分,行政划分, 家谱,家谱, 物种物种层次模型层次模型举例2022-5-10An Introduction t

52、o Database System96二、多对多联系在层次模型中的表示二、多对多联系在层次模型中的表示v多对多多对多联系在层次模型中的表示 用层次模型用层次模型间接间接表示多对多联系表示多对多联系 方法方法将多对多联系将多对多联系分解分解成一对多联系成一对多联系 分解方法分解方法 冗余结点法冗余结点法 虚拟结点法虚拟结点法2022-5-10An Introduction to Database System97多对多联系在层次模型中的表示(续)多对多联系在层次模型中的表示(续)2022-5-10An Introduction to Database System98三、层次模型的数据操纵与完整

53、性约束三、层次模型的数据操纵与完整性约束 v层次模型的数据操纵层次模型的数据操纵 查询 插入 删除 更新 2022-5-10An Introduction to Database System99层次模型的数据操纵与完整性约束(续)层次模型的数据操纵与完整性约束(续)v层次模型的完整性约束条件层次模型的完整性约束条件 无相应的双亲结点值就不能插入子女结点值 如果删除双亲结点值,则相应的子女结点值也被同时删除 更新操作时,应更新所有相应记录,以保证数据的一致性2022-5-10An Introduction to Database System100四、层次数据模型的存储结构四、层次数据模型的存

54、储结构v邻接法按照层次树按照层次树前序遍历前序遍历的顺序把所有记录值依次邻接存的顺序把所有记录值依次邻接存放,即通过放,即通过来实现来实现2022-5-10An Introduction to Database System101层次数据模型的存储结构(续)层次数据模型的存储结构(续)图图1.20 层次数据库及其实例层次数据库及其实例 A1A2C8C6C4B6C9C2B4C14C7C5C3B1A1图图1.21 邻接法邻接法 按邻接法存放图按邻接法存放图1.20(b)中以根记录中以根记录A1为首的层次为首的层次记录实例集记录实例集2022-5-10An Introduction to Datab

55、ase System102层次数据模型的存储结构(续)层次数据模型的存储结构(续)v链接法 用用指针指针来反映数据之间的层次联系来反映数据之间的层次联系 子女兄弟链接法子女兄弟链接法 层次序列链接法层次序列链接法2022-5-10An Introduction to Database System103层次数据模型的存储结构(续)层次数据模型的存储结构(续)n 子女子女-兄弟链接法兄弟链接法每个记录设两类指针,分别指向最左边的子女子女(每个记录型对应一个)和最近的2022-5-10An Introduction to Database System104层次数据模型的存储结构(续)层次数据模型

56、的存储结构(续)v层次序列链接法层次序列链接法按树的前序穿越顺序链接各记录值2022-5-10An Introduction to Database System105五、层次模型的优缺点五、层次模型的优缺点v 优点 层次模型的数据结构比较简单清晰层次模型的数据结构比较简单清晰 查询效率高,性能优于关系模型,不低于网状模型查询效率高,性能优于关系模型,不低于网状模型 层次数据模型提供了良好的完整性支持层次数据模型提供了良好的完整性支持v 缺点 多对多联系表示不自然多对多联系表示不自然 对插入和删除操作的限制多,应用程序的编写比较复杂对插入和删除操作的限制多,应用程序的编写比较复杂 查询子女结点

57、必须通过双亲结点查询子女结点必须通过双亲结点 由于结构严密,层次命令趋于程序化由于结构严密,层次命令趋于程序化 2022-5-10An Introduction to Database System106 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型2022-5-10An Introduction to Database System1071.2.6 网状模型

58、网状模型v网状数据库系统采用网状数据库系统采用网状模型网状模型作为数据的组织方式作为数据的组织方式 v典型代表是典型代表是DBTG系统:系统: 亦称CODASYL (Conference On Data System Language,数据系统语言研究会 )系统 70年代由DBTG(Data Base Task Group,数据库任务组)提出的一个系统方案 奠定了数据库系统的基本概念、方法和技术v实际系统实际系统 Cullinet Software Inc.公司的 IDMS Univac公司的 DMS1100 Honeywell公司的IDS/2 HP公司的IMAGE2022-5-10An In

59、troduction to Database System1081.网状数据模型的数据结构网状数据模型的数据结构v网状模型满足下面两个条件的基本层次联系的集合:满足下面两个条件的基本层次联系的集合:1. 允许一个以上的结点无双亲;允许一个以上的结点无双亲;2. 一个结点可以有多于一个的双亲一个结点可以有多于一个的双亲。2022-5-10An Introduction to Database System109网状数据模型的数据结构(续)网状数据模型的数据结构(续)v 表示方法(与层次数据模型相同)实体型实体型:用记录类型描述:用记录类型描述 每个结点表示一个记录类型(实体)每个结点表示一个记录

60、类型(实体)属性属性:用字段描述:用字段描述 每个记录类型可包含若干个字段每个记录类型可包含若干个字段联系联系:用结点之间的:用结点之间的表示记录类表示记录类型型(实体)之(实体)之 间的间的一对多的父子联系一对多的父子联系2022-5-10An Introduction to Database System110网状数据模型的数据结构(续)网状数据模型的数据结构(续)v网状模型与层次模型的区别 网状模型允许多个结点没有双亲结点网状模型允许多个结点没有双亲结点 网状模型允许结点有多个双亲结点网状模型允许结点有多个双亲结点 网状模型允许两个结点之间有多种联系(复合联系)网状模型允许两个结点之间有

温馨提示

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

评论

0/150

提交评论