数据库系统概论第四版王珊等ppt课件.ppt

上传人:豆**** 文档编号:77562636 上传时间:2023-03-15 格式:PPT 页数:1910 大小:5.59MB
返回 下载 相关 举报
数据库系统概论第四版王珊等ppt课件.ppt_第1页
第1页 / 共1910页
数据库系统概论第四版王珊等ppt课件.ppt_第2页
第2页 / 共1910页
点击查看更多>>
资源描述

《数据库系统概论第四版王珊等ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据库系统概论第四版王珊等ppt课件.ppt(1910页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数据库系统概论数据库系统概论AnIntroductiontoDatabaseSystem教材及参考书教材及参考书教材教材n萨师煊,王珊:数据库系统概论数据库系统概论(第三版第三版),高等教育出版社,2000中国人民大学教材及参考书教材及参考书(2)(2)参考书参考书n施伯乐,丁宝康:数据库系统教程,高教出数据库系统教程,高教出版社,版社,2003学习方式学习方式听课(启发式、讨论式)读书(预习、复习)评分标准:评分标准:平时表现5平时测试15个人研究报告8集体项目12期末考试60研究报告(第研究报告(第15周交)周交)n题目自拟,与数据库有关,偏重理论而不是具体软件的操作。题目于五一节前定好。

2、n包括以下要点:1)从问题入手,该技术是解决什么问题2)该技术的发展历史3)该技术的要点是什么,如何一步一步做的4)该技术的发展方向5)个人对该技术的看法,比如新思想,建议算法的改变等等。6)索引,reference,必须要有并且标记在文中。7)准备10分钟的ppt文件。以便抽查演讲。集体项目:集体项目:n提供用access或者mysql为数据库,编程选用c,java,php,visualbasic,若用其他语言或数据库,请准备好演示环境。n58人一组。自由分组。第六周组好n题目将于第七周公布。上交时,软件,项目说明书,以及20分钟ppt。内容安排内容安排(1)基础篇n第一章:绪论n第二章:关

3、系数据库n第三章:关系数据库标准语言SQLn第四章:关系系统及其查询优化n第五章:关系数据理论设计篇n第六章:数据库设计内容安排内容安排(2)系统篇n第七章:数据库恢复技术n第八章:并发控制n第九章:数据库安全性n第十章:数据库完整性数据库系统概论数据库系统概论AnIntroductiontoDatabaseSystem第一章第一章 绪论绪论第一章第一章绪论绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结1.1数据库系统概述数据库系统概述 1.1.1 数据库的地位 1.1.2 四个基本概念 1.1.3 数据管理技术的产生与发展

4、数据库的地位数据库的地位n数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支n数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透n数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志1.1数据库系统概述数据库系统概述 1.1.1 数据库的地位 1.1.2 四个基本概念 1.1.3 数据管理技术的产生与发展1.1.2四个基本概念四个基本概念n数据(Data)n数据库(Database)n数据库管理系统(DBMS)n数据库系统(DBS)一、数据一、数据n数据(Data)是数据库中存储的基本对象n数据的定义n描述事物

5、的符号记录n数据的种类n文字、图形、图象、声音n数据的特点n数据与其语义是不可分的数据举例数据举例n学生档案中的学生记录(李明,男,1972,江苏,计算机系,1990)n数据的形式不能完全表达其内容n数据的解释n语义:学生姓名、性别、出生年月、籍贯、所在系别、入学时间n解释:李明是个大学生,1972年出生,江苏人,1990年考入计算机系n请给出另一个解释和语义二、数据库(举例)二、数据库(举例)二、数据库二、数据库(续续)n人们收集并抽取出一个应用所需要的大量数据之后,应将其保存起来以供进一步加工处理,进一步抽取有用信息n数据库的定义n数据库(Database,简称DB)是长期储存在计算机内、

6、有组织的、可共享的大量数据集合二、数据库二、数据库(续续)n数据库的特征n数据按一定的数据模型组织、描述和储存数据按一定的数据模型组织、描述和储存n可为各种用户共享可为各种用户共享n冗余度较小冗余度较小n数据独立性较高数据独立性较高n易扩展易扩展三、数据库管理系统三、数据库管理系统n什么是DBMSn数 据 库 管 理 系 统(DatabaseManagementSystem,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。nDBMS的用途n科学地组织和存储数据、高效地获取和维护数据DBMS的主要功能的主要功能n数据定义功能提供数据定义语言提供数据定义语言(DDL)定义数据库中的数据对

7、象定义数据库中的数据对象n数据操纵功能:提供数据操纵语言(DML)操纵数据实现对数据库的基本操作操纵数据实现对数据库的基本操作(查询、插入、删除和修改查询、插入、删除和修改)DBMS的主要功能的主要功能n数据库的运行管理保证数据的安全性、完整性、保证数据的安全性、完整性、多用户对数据的并发使用多用户对数据的并发使用 发生故障后的系统恢复发生故障后的系统恢复n数据库的建立和维护功能(实用程序实用程序)数据库数据批量装载数据库数据批量装载 数据库转储数据库转储 介质故障恢复介质故障恢复 数据库的重组织数据库的重组织 性能监视等性能监视等四、数据库系统四、数据库系统n什么是数据库系统n数数据据库库系

8、系统统(DatabaseSystem,简简称称DBS)是是指在计算机系统中引入数据库后的系统构成。指在计算机系统中引入数据库后的系统构成。n在在不不引引起起混混淆淆的的情情况况下下常常常常把把数数据据库库系系统统简简称称为为数数据库。据库。n数据库系统的构成n由由数数据据库库、数数据据库库管管理理系系统统(及及其其开开发发工工具具)、应应用系统、数据库管理员(和用户)构成。用系统、数据库管理员(和用户)构成。数据库系统数据库系统(续续)n数据库系统构成图示n参看教材page_5图1.1n数据库系统在计算机系统中的位置图示n参看教材page_5图1.21.1数据库系统概述数据库系统概述 1.1.

9、1 数据库的地位 1.1.2 四个基本概念 1.1.3 数据管理技术的产生与发展1.1.3数据管理技术的产生和发展数据管理技术的产生和发展n什么是数据管理n对对数数据据进进行行分分类类、组组织织、编编码码、存存储储、检检索索和和维维护,是数据处理的中心问题护,是数据处理的中心问题n数据管理技术的发展过程n人工管理阶段人工管理阶段(40年代中年代中-50年代中年代中)n文件系统阶段文件系统阶段(50年代末年代末-60年代中年代中)n数据库系统阶段数据库系统阶段(60年代末年代末-现在现在)数据管理技术的产生和发展数据管理技术的产生和发展(续续)n数据管理技术的发展动力n应用需求的推动应用需求的推

10、动n计算机硬件的发展计算机硬件的发展n计算机软件的发展计算机软件的发展一、人工管理一、人工管理n时期n40年代中-50年代中n产生的背景n应用需求科学计算n硬件水平无直接存取存储设备n软件水平没有操作系统n处理方式批处理人工管理人工管理(续续)n特点n数据的管理者:应用程序,数据不保存。n数据面向的对象:某一应用程序n数据的共享程度:无共享、冗余度极大n数据的独立性:不独立,完全依赖于程序n数据的结构化:无结构n数据控制能力:应用程序自己控制应用程序与数据的对应关系应用程序与数据的对应关系(人工管理人工管理)应用程序应用程序数据集数据集应用程序应用程序数据集数据集应用程序应用程序数据集数据集n

11、.二、文件系统二、文件系统n时期n50年代末-60年代中n产生的背景n应用需求科学计算、管理n硬件水平磁盘、磁鼓n软件水平有文件系统n处理方式联机实时处理、批处理文件系统文件系统(续续)特点数据的管理者:文件系统,数据可长期保存数据面向的对象:某一应用程序数据的共享程度:共享性差、冗余度大数据的结构化:记录内有结构,整体无结构数据的独立性:独立性差,数据的逻辑结构改变必须修改应用程序数据控制能力:应用程序自己控制应用程序与数据的对应关系应用程序与数据的对应关系(文件系统文件系统)应用程序应用程序文件文件应用程序应用程序文件文件2应用程序应用程序文件文件n存取存取方法方法.文件系统中数据的结构文

12、件系统中数据的结构n记录内有结构。n数据的结构是靠程序定义和解释的。n数据只能是定长的。n可以间接实现数据变长要求,但访问相应数据的应用可以间接实现数据变长要求,但访问相应数据的应用程序复杂了。程序复杂了。n文件间是独立的,因此数据整体无结构。n可以间接实现数据整体的有结构,但必须在应用程序可以间接实现数据整体的有结构,但必须在应用程序中对描述数据间的联系中对描述数据间的联系。n数据的最小存取单位是记录。三、数据库系统三、数据库系统n时期n60年代末以来n产生的背景n应用背景大规模管理n硬件背景大容量磁盘n软件背景有数据库管理系统n处理方式联机实时处理,分布处理,批处理n数据管理技术进入数据库

13、阶段的标志是数据管理技术进入数据库阶段的标志是20世纪世纪60年代末的三件大事:年代末的三件大事:1968年美国IBM公司推出层次模型的IMS系统。1969年美国CODASYL组织发布了DBTG报告,总结了当时各式各样的数据库,提出网状模型。1970年美国IBM公司的E.F.Codd连续发表论文,提出关系模型,奠定了关系数据库的理论基础。数据库系统数据库系统(续续)n特点n数据的管理者:DBMSn数据面向的对象:现实世界n数据的共享程度:共享性高n数据的独立性:高度的物理独立性和一定的逻辑独立性n数据的结构化:整体结构化n数据控制能力:由DBMS统一管理和控制应用程序与数据的对应关系应用程序与

14、数据的对应关系(数据库系统数据库系统)DBMS应用程序1应用程序2数据库数据的高共享性的好处数据的高共享性的好处n降低数据的冗余度,节省存储空间n避免数据间的不一致性n使系统易于扩充数据独立性数据独立性n物理独立性n指用户的应用程序与存储在磁盘上的数据库中数据指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程是相互独立的。当数据的物理存储改变了,应用程序不用改变序不用改变。n逻辑独立性n指指用用户户的的应应用用程程序序与与数数据据库库的的逻逻辑辑结结构构是是相相互互独独立立的。数据的逻辑结构改变了,用户程序也可以不变的。数据的逻辑结构改变了,用户程序也可以

15、不变。数据结构化数据结构化n整体数据的结构化是数据库的主要特征之一。n数据库中实现的是数据的真正结构化n数据的结构用数据的结构用数据模型数据模型描述,无需程序定义和解释。描述,无需程序定义和解释。n数据可以数据可以变长变长。n数据的最小存取单位是数据的最小存取单位是数据项数据项。DBMS对数据的控制功能对数据的控制功能n数据的安全性(Security)保护n使每个用户只能按指定方式使用和处理指定数据,保护数据以防止不合法的使用造成的数据的泄密和破坏。n数据的完整性(Integrity)检查n将数据控制在有效的范围内,或保证数据之间满足一定的关系。DBMS对数据的控制功能对数据的控制功能n并发(

16、Concurrency)控制n对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。n数据库恢复(Recovery)n将数据库从错误状态恢复到某一已知的正确状态。n程序和数据间的联系程序和数据间的联系n文件系统阶段信息处理的传统方式文件系统阶段信息处理的传统方式数据库阶段信息处理方式的演变数据库阶段信息处理方式的演变第一章第一章绪论绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结数据模型数据模型n在数据库中用数据模型这个工具来抽象、表抽象、表示和处理示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟n

17、数据模型应满足三方面要求n能比较能比较真实真实地模拟现实世界地模拟现实世界n容容易易为人所为人所理解理解n便于在计算机上便于在计算机上实现实现数据模型数据模型(续续)n数据模型分成两个不同的层次(1)概念模型概念模型也称信息模型,它是按用户的观点来也称信息模型,它是按用户的观点来对数据和信息建模。对数据和信息建模。(2)数据模型数据模型主要包括网状模型、层次模型、关系主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模模型等,它是按计算机系统的观点对数据建模。数据模型数据模型(续续)n客观对象的抽象过程-两步抽象n现实世界中的客观对象抽象为概念模型;现实世界中的客观对象抽象

18、为概念模型;n把概念模型转换为某一把概念模型转换为某一DBMS支持的数据模型。支持的数据模型。概念模型是现实世界到机器世界的一个中间层次。1.2数据模型数据模型1.2.1数据模型的组成要素1.2.2概念模型1.2.3常用逻辑数据模型1.2.4层次模型1.2.5网状模型1.2.6关系模型1.2.1数据模型的组成要素数据模型的组成要素n数据结构n数据操作n数据的约束条件1.数据结构数据结构n什么是数据结构n对象类型的集合n两类对象n与数据类型、内容、性质有关的对象n与数据之间联系有关的对象n数据结构是对系统静态特性的描述2.数据操作数据操作n数据操作n对数据库中各种对象(型)的实例(值)允许执行的

19、操作及有关的操作规则n数据操作的类型n检索n更新(包括插入、删除、修改)数据操作数据操作(续续)n数据模型对操作的定义n操作的确切含义n操作符号n操作规则(如优先级)n实现操作的语言n数据操作是对系统动态特性的描述。3.数据的约束条件数据的约束条件n数据的约束条件n一组完整性规则的集合。一组完整性规则的集合。n完整性规则是给定的数据模型中数据及其联完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容保证数据的正确、有效、相容。数据的

20、约束条件数据的约束条件(续续)n数据模型对约束条件的定义n反映和规定本反映和规定本数据模型数据模型必须遵守的基本的通用的完必须遵守的基本的通用的完整性约束条件。例如在关系模型中,任何关系必须整性约束条件。例如在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。满足实体完整性和参照完整性两个条件。n提提供供定定义义完完整整性性约约束束条条件件的的机机制制,以以反反映映具具体体应应用用所涉及的数据必须遵守的特定的语义约束条件所涉及的数据必须遵守的特定的语义约束条件。1.2.2概念模型概念模型1.概念模型2.信息世界中的基本概念3.概念模型的表示方法1.概念模型概念模型n概念模型的用途n概

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

22、或抽象的概念可以是具体的人、事、物或抽象的概念。(2)属性(Attribute)实体所具有的某一特性称为属性。实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。一个实体可以由若干个属性来刻画。(3)码(Key)唯一标识实体的属性集称为码。唯一标识实体的属性集称为码。信息世界中的基本概念信息世界中的基本概念(续续)(4)域(Domain)属性的取值范围称为该属性的域属性的取值范围称为该属性的域。(5)实体型(EntityType)用实体名及其属性名集合来抽象和刻画用实体名及其属性名集合来抽象和刻画同类实体称为实体型同类实体称为实体型(6)实体集(EntitySet)同型实体的集合称为

23、实体集同型实体的集合称为实体集信息世界中的基本概念信息世界中的基本概念(续续)(7)联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系中反映为实体内部的联系和实体之间的联系实体型间联系两个实体型两个实体型一对一联系(一对一联系(1:1)三个实体型三个实体型一对多联系(一对多联系(1:n)一个实体型一个实体型多对多联系(多对多联系(m:n)两个实体型间的联系两个实体型间的联系实体型实体型1联系名联系名实体型实体型2111:1联系联系实体型实体型1联系名联系名实体型实体型2mnm:n联系

24、联系实体型实体型1联系名联系名实体型实体型21n1:n联系联系数据联系的描述数据联系的描述图1.一对一联系图1.9一对多联系图1.10多对多联系两个实体型间的联系两个实体型间的联系n一对一联系n如如果果对对于于实实体体集集A中中的的每每一一个个实实体体,实实体体集集B中中至至多多有有一一个个实实体体与与之之联联系系,反反之之亦亦然然,则则称称实实体体集集A与与实体集实体集B具有一对一联系具有一对一联系。记为。记为1:1。n实例班级与班长之间的联系:班级与班长之间的联系:一个班级只有一个正班长一个班级只有一个正班长一个班长只在一个班中任职一个班长只在一个班中任职两个实体型间的联系两个实体型间的联

25、系(续续)n一对多联系n如如果果对对于于实实体体集集A中中的的每每一一个个实实体体,实实体体集集B中中有有n个个实实体体(n0)与与之之联联系系,反反之之,对对于于实实体体集集B中中的的每每一一个个实实体体,实实体体集集A中中至至多多只只有有一一个个实实体体与与之之联联系系,则则称称实实体体集集A与与实实体体集集B有有一一对对多联系多联系记为记为1:nn实例班级与学生之间的联系:班级与学生之间的联系:一个班级中有若干名学生,一个班级中有若干名学生,每个学生只在一个班级中学习每个学生只在一个班级中学习两个实体型间的联系两个实体型间的联系(续续)n多对多联系(m:n)n如如果果对对于于实实体体集集

26、A中中的的每每一一个个实实体体,实实体体集集B中中有有n个个实实体体(n0)与与之之联联系系,反反之之,对对于于实实体体集集B中中的的每每一一个个实实体体,实实体体集集A中中也也有有m个个实实体体(m0)与与之之联联系系,则则称称实实体体集集A与与实实体体B具具有有多对多联系。记为多对多联系。记为m:nn实例课程与学生之间的联系:课程与学生之间的联系:一门课程同时有若干个学生选修一门课程同时有若干个学生选修一个学生可以同时选修多门课程一个学生可以同时选修多门课程多个实体型间的联系多个实体型间的联系(续续)n多个实体型间的一对多联系n若实体集若实体集E1,E2,.,En存在联系,对于存在联系,对

27、于实体集实体集Ej(j=1,2,.,i-1,i+1,.,n)中的给定实体,最多只和中的给定实体,最多只和Ei中的一个中的一个实体相联系,则我们说实体相联系,则我们说Ei与与E1,E2,.,Ei-1,Ei+1,.,En之间的联系是一对多的。之间的联系是一对多的。多个实体型间的联系多个实体型间的联系(续续)n实例 课程、教师与参考书三个实体型课程、教师与参考书三个实体型如果一门课程可以有若干个教师讲授,使用若干如果一门课程可以有若干个教师讲授,使用若干本参考书,每一个教师只讲授一门课程,每一本本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用参考书只供一门课程使用课程与教师、参考书之

28、间的联系是一对多的课程与教师、参考书之间的联系是一对多的n多个实体型间的一对一联系n多个实体型间的多对多联系同一实体集内各实体间的联系同一实体集内各实体间的联系n一对多联系n实例 职工实体集内部具有领导与被领导的联系职工实体集内部具有领导与被领导的联系某一职工(干部)某一职工(干部)“领导领导”若干名职工若干名职工一个职工仅被另外一个职工直接领导一个职工仅被另外一个职工直接领导这是一对多的联系这是一对多的联系n一对一联系n多对多联系三元联系一元联系3.概念模型的表示方法概念模型的表示方法n概念模型的表示方法很多n实体联系方法(E-R方法)n用E-R图来描述现实世界的概念模型nE-R方法也称为E

29、-R模型E-R图图n实体型n用矩形表示,矩形框内写明实体名。学生学生教师教师E-R图图(续续)n属性n用椭圆形表示,并用无向边将其与相应的实体连接起来学生学生学号学号年龄年龄性别性别姓名姓名E-R图图(续续)n联系n联系本身:用菱形表示,菱形框内写明联系名,用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(边旁标上联系的类型(1:1、1:n或或m:n)n联系的属性:联系本身也是一种实体型,也可以联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要有属性。如果一个联系具有属性,则这些属

30、性也要用无向边与该联系连接起来用无向边与该联系连接起来联系的表示方法联系的表示方法实体型实体型1联系名联系名实体型实体型2111:1联系联系实体型实体型1联系名联系名实体型实体型2mnm:n联系联系实体型实体型1联系名联系名实体型实体型21n1:n联系联系联系的表示方法联系的表示方法(续续)实体型实体型1联系名联系名mn同一实体型内同一实体型内部的部的m:n联系联系实体型实体型1联系名联系名实体型实体型21m多个实体型间的多个实体型间的1:n联系联系实体型实体型3n联系的表示方法示例联系的表示方法示例班级班级班级班级-班长班长班长班长111:1联系联系课程课程选修选修学生学生mnm:n联系联系

31、班级班级组成组成学生学生1n1:n联系联系联系的表示方法示例联系的表示方法示例(续续)职工职工领导领导1n同一实体型内同一实体型内部的部的1:n联系联系课程课程讲授讲授教师教师1m多个实体型间的多个实体型间的1:n联系联系参考书参考书n联系属性的表示方法联系属性的表示方法课程课程选修选修学生学生mn成绩成绩实体联系模型(实例)实体联系模型(实例)为仓库管理设计一个ER模型。仓库主要管理零件的采购和供应等事项。仓库根据需要向外面供应商订购零件,而许多工程项目需要仓库提供零件。首先确定实体类型。本问题有三个实体类型:零件PART,工程项目PROJECT,零件供应商SUPPLIER。确定联系类型。P

32、ROJECT和PART之间是M:N联系,PART和SUPPLIER之间也是M:N联系,分别命名为P_P和P_S.把实体类型和联系类型组合成ER图。确定实体类型和联系类型的属性。确定实体类型的键,在ER图中属于码的属性名下画一条横线。图1.14ER图实例1.2.3常用数据模型常用数据模型n非关系模型n层次模型(层次模型(HierarchicalModel)n网状模型网状模型(NetworkModel)n数据结构:以基本层次联系为基本单位基基本本层层次次联联系系:两两个个记记录录以以及及它它们们之之间间的的一一对对多多(包括一对一(包括一对一)的联系的联系常用数据模型常用数据模型(续续)n关系模型

33、(RelationalModel)n数据结构:表n面向对象模型(ObjectOrientedModel)n数据结构:对象1.2数据模型数据模型1.2.1数据模型的组成要素1.2.2概念模型1.2.3常用数据模型1.2.4层次模型1.2.5网状模型1.2.6关系模型1.2.4层次模型层次模型1.层次数据模型的数据结构2.层次数据模型的数据操纵3.层次数据模型的与完整性约束4.层次数据模型的存储结构5.层次数据模型的优缺点6.典型的层次数据库系统1.层次数据模型的数据结构层次数据模型的数据结构n层次模型满足下面两个条件的基本层次联系的集合为层次模型。满足下面两个条件的基本层次联系的集合为层次模型。

34、1.有且只有一个结点没有双亲结点,这个结点称为根有且只有一个结点没有双亲结点,这个结点称为根结点结点2.根以外的其它结点有且只有一个双亲结点根以外的其它结点有且只有一个双亲结点n层次模型中的几个术语n根结点,双亲结点,兄弟结点根结点,双亲结点,兄弟结点,叶结点叶结点层次数据模型的数据结构层次数据模型的数据结构(续)续)1根结点根结点 2 兄弟结点兄弟结点 3叶结点叶结点4兄弟结点兄弟结点5叶结点叶结点叶结点叶结点层次数据模型的数据结构层次数据模型的数据结构(续)续)n表示方法实体型实体型:用记录类型描述。:用记录类型描述。每个结点表示一个记录类型。每个结点表示一个记录类型。属性属性:用字段描述

35、。每个记录类型可包含若干个字段。:用字段描述。每个记录类型可包含若干个字段。联系联系:用结点之间的连线表示记录(类)型之间的:用结点之间的连线表示记录(类)型之间的一对多的联系一对多的联系实例:实例:教员教员-学生数据模型(学生数据模型(P23)层次数据模型的数据结构层次数据模型的数据结构(续)续)n特点n结点的双亲是唯一的结点的双亲是唯一的n只能直接处理一对多的实体联系只能直接处理一对多的实体联系n每个记录类型定义一个排序字段,也称为码字段每个记录类型定义一个排序字段,也称为码字段n任何记录值只有按其路径查看时,才能显出它的全部意义任何记录值只有按其路径查看时,才能显出它的全部意义n没有一个

36、子女记录值能够脱离双亲记录值而独立存在没有一个子女记录值能够脱离双亲记录值而独立存在层次数据模型的数据结构层次数据模型的数据结构(续)续)n多对多联系在层次模型中的表示n用层次模型用层次模型间接间接表示多对多联系表示多对多联系n方法方法将多对多联系将多对多联系分解分解成一对多联系成一对多联系n分解方法分解方法n冗余结点法冗余结点法n虚拟结点法虚拟结点法2.层次模型的数据操纵层次模型的数据操纵n查询n插入n删除n更新3.层次模型的完整性约束层次模型的完整性约束n无相应的双亲结点值就不能插入子女结无相应的双亲结点值就不能插入子女结点值点值n如果删除双亲结点值,则相应的子女结如果删除双亲结点值,则相

37、应的子女结点值也被同时删除点值也被同时删除n更新操作时,应更新所有相应记录,以更新操作时,应更新所有相应记录,以保证数据的一致性保证数据的一致性4.层次数据模型的存储结构层次数据模型的存储结构n邻接法按照层次树前序遍历的顺序把所有记录值依次邻接存按照层次树前序遍历的顺序把所有记录值依次邻接存放,即通过物理空间的位置相邻来实现层次顺序放,即通过物理空间的位置相邻来实现层次顺序n链接法用指引元来反映数据之间的层次联系用指引元来反映数据之间的层次联系n子女兄弟链接法子女兄弟链接法P26n层次序列链接法层次序列链接法P265.层次模型的优缺点层次模型的优缺点n优点n层层次次数数据据模模型型简简单单,对

38、对具具有有一一对对多多的的层层次次关关系系的的部门描述自然、直观,容易理解部门描述自然、直观,容易理解n性能优于关系模型,不低于网状模型性能优于关系模型,不低于网状模型n层次数据模型提供了良好的完整性支持层次数据模型提供了良好的完整性支持n缺点n多对多联系表示不自然多对多联系表示不自然n对插入和删除操作的限制多对插入和删除操作的限制多n查询子女结点必须通过双亲结点查询子女结点必须通过双亲结点n层次命令趋于程序化层次命令趋于程序化6.典型的层次数据库系统典型的层次数据库系统IMS数据库管理系统n第一个大型商用第一个大型商用DBMSn1968年推出年推出nIBM公司研制公司研制第一章第一章绪论绪论

39、1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结1.2数据模型数据模型1.2.1概念模型1.2.2数据模型的组成要素1.2.3最常用的数据模型1.2.4层次模型1.2.5网状模型1.2.6关系模型1.2.5网状模型网状模型1.网状数据模型的数据结构2.网状数据模型的数据操纵3.网状数据模型的完整性约束4.网状数据模型的存储结构5.网状数据模型的优缺点6.典型的网状数据库系统1.网状数据模型的数据结构网状数据模型的数据结构n网状模型满满足足下下面面两两个个条条件件的的基基本本层层次次联联系系的的集集合合为网状模型。为网状模型。1.允

40、许一个以上的结点无双亲;允许一个以上的结点无双亲;2.一个结点可以有多于一个的双亲一个结点可以有多于一个的双亲。网状数据模型的数据结构网状数据模型的数据结构1 2 R3L1L2 R1 R1 R2R2 L3L3 L1 L2 L1 L2 R3R3 L4L4 R4 R4 R5R5 网状数据模型的数据结构网状数据模型的数据结构(续)续)n表示方法(与层次数据模型相同)实体型实体型:用记录类型描述。:用记录类型描述。每个结点表示一个记录类型。每个结点表示一个记录类型。属性属性:用字段描述。:用字段描述。每个记录类型可包含若干个字段。每个记录类型可包含若干个字段。联系联系:用结点之间的连线表示记录(类)型

41、之:用结点之间的连线表示记录(类)型之间的间的一对多的父子联系一对多的父子联系。网状数据模型的数据结构网状数据模型的数据结构(续)续)n特点n只能直接处理一对多的实体联系只能直接处理一对多的实体联系n每每个个记记录录类类型型定定义义一一个个排排序序字字段段,也也称称为为码码字段字段n任任何何记记录录值值只只有有按按其其路路径径查查看看时时,才才能能显显出出它的全部意义它的全部意义网状数据模型的数据结构网状数据模型的数据结构(续)续)n网状模型与层次模型的区别n网状模型允许多个结点没有双亲结点网状模型允许多个结点没有双亲结点n网状模型允许结点有多个双亲结点网状模型允许结点有多个双亲结点n网状模型

42、允许两个结点之间有多种联系(复网状模型允许两个结点之间有多种联系(复合联系)合联系)n网状模型可以更直接地去描述现实世界网状模型可以更直接地去描述现实世界n层次模型实际上是网状模型的一个特例层次模型实际上是网状模型的一个特例网状数据模型的数据结构网状数据模型的数据结构(续)续)1 2 R3L1L2 R1 R1 R2R2 L3L3 L1 L2 L1 L2 R3R3 L4L4 R4 R4 R5R5 网状数据模型的数据结构网状数据模型的数据结构(续)续)1 L1L2 R2网状数据模型的数据结构网状数据模型的数据结构(续)续)学生宿舍学生宿舍学生学生教研室教研室系系教师教师网状数据模型的数据结构网状数

43、据模型的数据结构(续)续)父母父母人人子女子女树树种种植植砍砍伐伐养养育育赡赡养养网状数据模型的数据结构网状数据模型的数据结构(续)续)多对多联系在网状模型中的表示n用网状模型用网状模型间接间接表示多对多联系表示多对多联系n方法方法将多对多联系将多对多联系直接直接分解成一对多联系分解成一对多联系2.网状模型的数据操纵网状模型的数据操纵l查询l插入l删除l更新3.网状数据模型的完整性约束网状数据模型的完整性约束网状数据库系统(如DBTG)对数据操纵加了一些限制,提供了一定的完整性约束n码码n双亲结点与子女结点之间是一对多联系双亲结点与子女结点之间是一对多联系n属籍类别属籍类别n加入类别加入类别(

44、自动的,手工的自动的,手工的)n移出类别移出类别(固定的,必须固定的,必须的,随意的的,随意的)3.网状数据模型的完整性约束网状数据模型的完整性约束n完整性约束条件n允许插入尚未确定双亲结点值的子女结点值允许插入尚未确定双亲结点值的子女结点值n允许只删除双亲结点值允许只删除双亲结点值4.网状数据模型的存储结构网状数据模型的存储结构n关键n实现记录之间的联系实现记录之间的联系n常用方法n单向链接单向链接n双向链接双向链接n环状链接环状链接n向首链接向首链接例:P295.网状模型的优缺点网状模型的优缺点n优点n能能够够更更为为直直接接地地描描述述现现实实世世界界,如如一一个个结结点点可可以以有有多

45、个双亲多个双亲n具有良好的性能,存取效率较高具有良好的性能,存取效率较高n缺点n结构比较复杂,而且随着应用环境的扩大,数据库结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握的结构就变得越来越复杂,不利于最终用户掌握nDDL、DML语言复杂,用户不容易使用语言复杂,用户不容易使用6.典型的网状数据库系统典型的网状数据库系统nDBTG系统,亦称CODASYL系统n由由DBTG提出的一个系统方案提出的一个系统方案n奠定了数据库系统的基本概念、方法和技术奠定了数据库系统的基本概念、方法和技术n70年代推出年代推出n实际系统nCullinetSoftwareInc.

46、公司的公司的IDMSnUnivac公司的公司的DMS1100nHoneywell公司的公司的IDS/2nHP公司的公司的IMAGE1.2数据模型数据模型1.2.1概念模型1.2.2数据模型的组成要素1.2.3最常用的数据模型1.2.4层次模型1.2.5网状模型1.2.6关系模型1.2.6关系模型关系模型1.关系数据模型的数据结构2.关系数据模型的操纵3.关系数据模型的完整性约束4.关系数据模型的存储结构5.关系数据模型的优缺点6.典型的关系数据库系统关系模型关系模型n最重要的一种数据模型。也是目前主要采用的数据模型n1970年由美国IBM公司SanJose研究室的研究员E.F.Codd提出n本

47、课程的重点关系数据模型的数据结构关系数据模型的数据结构n在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。关系模型的基本概念关系模型的基本概念n关系(Relation)一个关系对应通常说的一张表。n元组(Tuple)表中的一行即为一个元组。n属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名。关系模型的基本概念关系模型的基本概念n主码(Key)表中的某个属性组,它可以唯一确定一个元组。n域(Domain)属性的取值范围。n分量元组中的一个属性值。n关系模式对关系的描述关系名(属性1,属性2,属性n)学生(学号,姓名,年龄,性别,系,年级)关系数据

48、模型的数据结构关系数据模型的数据结构(续)续)n实体及实体间的联系的表示方法n实体型实体型:直接用关系(表)表示。:直接用关系(表)表示。n属性属性:用属性名表示。:用属性名表示。n一对一联系一对一联系:隐含在实体对应的关系中。:隐含在实体对应的关系中。n一对多联系一对多联系:隐含在实体对应的关系中。:隐含在实体对应的关系中。n多对多联系多对多联系:直接用关系表示:直接用关系表示。关系数据模型的数据结构关系数据模型的数据结构(续)续)例1学生、系、系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)系系(系号,系名,办公地点系号,系名,

49、办公地点)例2系、系主任、系与系主任间的一对一联系关系数据模型的数据结构关系数据模型的数据结构(续)续)例3学生、课程、学生与课程之间的多对多联系:学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)课程(课程号,课程名,学分)选修(学号,课程号,成绩)选修(学号,课程号,成绩)关系数据模型的数据结构关系数据模型的数据结构(续)续)n关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不最基本的规范条件:关系的每一个分量必须是一个不可分的数据项。可分的数据项。2.关系模型的数据操纵关系模型的数据操纵n查询

50、、插入、删除、更新n数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合n存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么干”3.关系模型的完整性约束关系模型的完整性约束n实体完整性n参照完整性n用户定义的完整性4.关系数据模型的存储结构关系数据模型的存储结构n表以文件形式存储n有的DBMS一个表对应一个操作系统文件n有的DBMS自己设计文件结构图关系模型的例子PART模式(P#,PNAME,COLOR,WEIGHT)PROJECT模式(J#,JNAME,DATE)SUPPLIER模式(S#,SNAME,SADDR)P_P模式(J#,P#,TOTAL)P_S模式(P#

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁