数据库系统概论

上传人:大米 文档编号:571875511 上传时间:2024-08-12 格式:PPT 页数:143 大小:3.48MB
返回 下载 相关 举报
数据库系统概论_第1页
第1页 / 共143页
数据库系统概论_第2页
第2页 / 共143页
数据库系统概论_第3页
第3页 / 共143页
数据库系统概论_第4页
第4页 / 共143页
数据库系统概论_第5页
第5页 / 共143页
点击查看更多>>
资源描述

《数据库系统概论》由会员分享,可在线阅读,更多相关《数据库系统概论(143页珍藏版)》请在金锄头文库上搜索。

1、数据库系统原理及应用数据库系统原理及应用数据库系统原理及应用数据库系统原理及应用 v课程性质:专业主干课课程性质:专业主干课(DBMS+计算机组成原理计算机组成原理+数据结构)数据结构)v课程学时:课程学时:60学时(学时(44+16)v考核方式:闭卷考试考核方式:闭卷考试 2考试成绩考试成绩v平时成绩平时成绩15分分v请假(有假条)扣请假(有假条)扣1分,请假(无假条)分,请假(无假条)2分,迟到早退扣分,迟到早退扣0.5分分v实验成绩实验成绩15分分v请假(有假条)扣请假(有假条)扣2分,请假(无假条)分,请假(无假条)3分,迟到早退扣分,迟到早退扣1分分 v期末考试期末考试 70分分3教

2、材及参考书教材及参考书 参考书参考书王珊萨师煊,:数据库系统概论王珊萨师煊,:数据库系统概论(第四版第四版) 高等教育出版社,高等教育出版社,2006.5 A First Course in Database Systems Jeffrey.D.Ullman, Jennifer Widom Dept. Of Computer Science Stanford University 上机软件上机软件SQL Server 20085学习方式学习方式 听课听课 (启发式、讨论式)(启发式、讨论式) 读书读书 (预习、复习)(预习、复习) 报告(书报告(书+笔笔+本)本) (综合练习)(综合练习)6内

3、容安排内容安排第第1章:数据库系统概论章:数据库系统概论第第2章:关系数据库章:关系数据库第第3章:关系数据库设计理论章:关系数据库设计理论第第4章:章:SQL Server 2008和和 关系数据库关系数据库 第第5章:章:SQL Server 2008高级应用高级应用8内容安排内容安排第第6章:数据库设计章:数据库设计第第7章:数据库安全性与完整性章:数据库安全性与完整性第第8章:数据库事务管理章:数据库事务管理9第第1 1章章 数据库系统概论数据库系统概论10第一章第一章 绪论绪论1.1 数据库系统基本概念数据库系统基本概念1.2 数据库技术的产生与发展数据库技术的产生与发展1.3 数据

4、模型数据模型1.4 数据库体系结构数据库体系结构1.5 数据库系统研究领域数据库系统研究领域11v怎么理解数据库?v1.存放数据v2.存放信息v3.存放数据的仓库v现实世界当中所有看得着,摸得到的事物经过大脑的高度抽象概括,都可以存进去。v实物都有各种描述它的数据和信息,将这些存进电脑,就相当于把这个实物存在电脑中了。1213一、数据一、数据v数据(Data)是数据库中存储的基本对象v数据的定义描述事物的符号记录v信息的定义 信息是数据经过加工处理后所获得的有用的知识。关系:数据是信息的载体。由数据构成信息。(Information)15二、数据库(二、数据库( Database)v数据存放在

5、哪里?数据存放在哪里?v 存放在电脑中的,如果没有人为的删除是不会改变的,可以长期存放的, v怎么存放?怎么存放?v 有组织的存放v存储多少?存储多少?v大量的v是否独立存在?是否独立存在?v共享16二、数据库二、数据库v数据库的定义数数据据库库(Database,简简称称DB)是是长长期期储储存存在在计计算算机机内内、有有组织组织的、的、可共享可共享的的大量有用大量有用数据的集合。数据的集合。v数据库的基本特征数据按一定的数据模型组织、描述和储存数据按一定的数据模型组织、描述和储存(层次、网状、关系等)层次、网状、关系等)可为各种用户共享可为各种用户共享冗余度较小冗余度较小数据独立性较高(逻

6、辑、物理)数据独立性较高(逻辑、物理)易扩展易扩展17三、数据库管理系统(三、数据库管理系统(DBMS)v什么是DBMS位于用户与OS之间的一层数据管理系统软件。是基础软件,是一个大型复杂的软件系统 vDBMS的用途科学地组织和存储数据、高效地获取和维护数据18常用的常用的DBMSvOracle(分布式数据库)vDB2vSybasevSQL Server vMysql(Linux) 19四、数据库系统(四、数据库系统(DBS)v什么是数据库系统(Database SystemDatabase System,简称,简称DBSDBS)v是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机

7、软件、硬件和数据资源组成的系统v具有管理数据库功能的计算机系统v数据库系统:由数据库、软件(重要的是DMBS)、硬件(计算机)、人员四部分组成。25四、数据库系统(四、数据库系统(DBS)vDB、DBMS、DBS三者之间的联系?v 最大的是DBS,其中一部分用来存放数据,用DBMS来管理这些数据,所以两者是并列放于数据库系统之中。26三、人三、人 员员v数据库管理员(DBA)v系统分析员和数据库设计人员v应用程序员v普通用户331. 数据库管理员数据库管理员(DBA)具体职责: v1.决定数据库中的信息内容和结构v2.决定数据库的存储结构和存取策略v3.定义数据的安全性要求和完整性约束条件35

8、数据库管理员数据库管理员(续续)v4.监控数据库的使用和运行周期性转储数据库数据文件日志文件系统故障恢复介质故障恢复监视审计文件36数据库管理员数据库管理员(续续)v5. 数据库的改进和重组性能监控和调优定期对数据库进行重组织,以提高系统的性能 需求增加和改变时,数据库须需要重构造371.2数据管理技术的产生和发展数据管理技术的产生和发展v什么是数据管理对数据进行分类、组织、编码、存储、检索和维护对数据进行分类、组织、编码、存储、检索和维护数据处理的中心问题数据处理的中心问题v数据管理技术的发展过程人工管理阶段人工管理阶段(20世纪世纪40年代中年代中-50年代中年代中)文件系统阶段文件系统阶

9、段(20世纪世纪50年代末年代末-60年代中年代中)数据库系统阶段数据库系统阶段(20世纪世纪60年代末年代末-现在现在)43应用程序与数据的对应关系应用程序与数据的对应关系(人工管理阶段人工管理阶段) 应用程序应用程序1数据集数据集1应用程序应用程序2数据集数据集2应用程序应用程序数据集数据集n.人工管理阶段应用程序与数据之间的对应关系 47应用程序与数据的对应关系应用程序与数据的对应关系(文件系统阶段文件系统阶段)应用程序应用程序文件文件应用程序应用程序文件文件2应用程序应用程序文件文件n存取存取方法方法.文件系统阶段应用程序与数据之间的对应关系 50应用程序与数据的对应关系应用程序与数据

10、的对应关系(数据库系统数据库系统)DBMS应用程序应用程序1应用程序应用程序2数据库数据库数据库系统阶段应用程序与数据之间的对应关系 581.3数据模型数据模型v在数据库中用数据模型这个工具来抽象、表示和处理抽象、表示和处理现实世界中的数据和信息。v通俗地讲数据模型就是现实世界的模拟。v数据模型应满足三方面要求能比较能比较真实真实地模拟现实世界地模拟现实世界容易容易为人所为人所理解理解便于在计算机上便于在计算机上实现实现59两大类数据模型两大类数据模型v数据模型分为两类(分属两个不同的层次)(1) 概念模型概念模型 也称信息模型,它是按用户的观点来对数据和信息建也称信息模型,它是按用户的观点来

11、对数据和信息建模,用于数据库设计。模,用于数据库设计。 (2) 逻辑模型和物理模型逻辑模型和物理模型 逻逻辑辑模模型型主主要要包包括括网网状状模模型型、层层次次模模型型、关关系系模模型型、面面向向对对象象模型等,按计算机系统的观点对数据建模,用于模型等,按计算机系统的观点对数据建模,用于DBMS实现实现。物物理理模模型型是是对对数数据据最最底底层层的的抽抽象象,描描述述数数据据在在系系统统内内部部的的表表示示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。方式和存取方法,在磁盘或磁带上的存储方式和存取方法。60两大类数据模型两大类数据模型 (续续)v客观对象的抽象过程-两步抽象现实世界中的

12、客观对象抽象为概念模型;现实世界中的客观对象抽象为概念模型;把概念模型转换为某一把概念模型转换为某一DBMS支持的数据模型。支持的数据模型。61两大类数据模型两大类数据模型 (续续)DBMS支持的数据模型支持的数据模型概念模型概念模型认识认识抽象抽象信息世界信息世界机器世界机器世界现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程现实世界现实世界现实世界现实世界 概念模型概念模型数据库设计人员完成数据库设计人员完成逻辑模型逻辑模型 物理模型物理模型由由DBMS完成完成概念模型概念模型 逻辑模型逻辑模型数据库设计人员完成数据库设计人员完成62 1.3.2 数据模型的组成要素数据模型的组成要

13、素v数据结构 v数据操作 v完整性约束条件63 一、一、 数据结构数据结构v什么是数据结构描述数据库的组成对象,以及对象之间的联系v描述的内容与数据类型、内容、性质有关的对象与数据之间联系有关的对象v数据结构是对系统静态特性的描述64 二、数据操作二、数据操作 v数据操作对数据库中各种对象(型)的实例(值)允许执行的 操作操作及有关的操作规则操作规则v数据操作的类型查询更新(包括插入、删除、修改)65 数据操作数据操作(续续) v数据模型对操作的定义操作的确切含义操作符号操作规则(如优先级)实现操作的语言v数据操作是对系统动态特性的描述请举例说明66三、数据的完整性约束条件三、数据的完整性约束

14、条件 v数据的完整性约束条件一组完整性规则的集合。完整性规则:给定的数据模型中数据及其联系所具有的制约和储存规则用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。67 数据的完整性约束条件数据的完整性约束条件(续续)v数据模型对完整性约束条件的定义反映和规定本反映和规定本数据模型数据模型必须遵守的必须遵守的基本的通用的基本的通用的完整完整性约束条件。例如在关系模型中,任何关系必须满足性约束条件。例如在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。实体完整性和参照完整性两个条件。提提供供定定义义完完整整性性约约束束条条件件的的机机制制,以以反反映映具具体

15、体应应用用所所涉及的数据必须遵守的特定的语义约束条件涉及的数据必须遵守的特定的语义约束条件。68 1.3.4 概念模型概念模型v信息世界中的基本概念v两个实体型之间的联系v两个以上实体型之间的联系v单个实体型内的联系v概念模型的一种表示方法v一个实例69概念模型概念模型v概念模型的用途概念模型用于信息世界的建模概念模型用于信息世界的建模是现实世界到机器世界的一个中间层次是现实世界到机器世界的一个中间层次是数据库设计的有力工具是数据库设计的有力工具数据库设计人员和用户之间进行交流的语言数据库设计人员和用户之间进行交流的语言v对概念模型的基本要求较强的语义表达能力较强的语义表达能力能够方便、直接地

16、表达应用中的各种语义知识能够方便、直接地表达应用中的各种语义知识简单、清晰、易于用户理解简单、清晰、易于用户理解70一、信息世界中的基本概念一、信息世界中的基本概念(1) 实体(Entity) 客观存在并可相互区别的事物称为实体。客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念可以是具体的人、事、物或抽象的概念。(2) 属性(Attribute) 实体所具有的某一特性称为属性。实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。一个实体可以由若干个属性来刻画。 (3) 码(Key) 唯一标识实体的属性集称为码。唯一标识实体的属性集称为码。71信息世界中的基本概念

17、信息世界中的基本概念(续续)(4) 域(Domain) 属性的取值范围称为该属性的域属性的取值范围称为该属性的域。 (5) 实体型(Entity Type) 用用实实体体名名及及其其属属性性名名集集合合来来抽抽象象和和刻刻画画同同类类实实体体称称为为实实体型体型(6) 实体集(Entity Set) 同一类型实体的集合称为实体集同一类型实体的集合称为实体集72信息世界中的基本概念信息世界中的基本概念(续续)(7) 联系(Relationship) 现实世界中事物内部以及事物之间的联系在信息世界现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体内部的联系和实体之间的联系。中反映为实体内

18、部的联系和实体之间的联系。实体内部实体内部的联系通常是指组成实体的各属性之间的联系的联系通常是指组成实体的各属性之间的联系实体之间实体之间的联系通常是指不同实体集之间的联系的联系通常是指不同实体集之间的联系73 1.3.4 最常用的数据模型最常用的数据模型v非关系模型层次模型层次模型(Hierarchical Model)网状模型网状模型(Network Model)v关系模型(Relational Model) v面向对象模型(Object Oriented Model)v对象关系模型(Object Relational Model)741.3.4 层次模型层次模型v层次模型是数据库系统中最

19、早出现的数据模型 v层次数据库系统的典型代表是IBM公司的IMS(Information Management System)数据库管理系统v层次模型用树形结构来表示各类实体以及实体间的联系 75一、一、 层次数据模型的数据结构层次数据模型的数据结构v层次模型 满足下面两个条件的基本层次联系的集合为层次模型满足下面两个条件的基本层次联系的集合为层次模型1. 有且只有一个结点没有双亲结点,这个结点称为根结点有且只有一个结点没有双亲结点,这个结点称为根结点2. 根以外的其它结点有且只有一个双亲结点根以外的其它结点有且只有一个双亲结点v层次模型中的几个术语根结点,双亲结点,兄弟结点,叶结点根结点,双

20、亲结点,兄弟结点,叶结点76层次数据模型的数据结构层次数据模型的数据结构(续续) 1 根结点根结点 2 兄弟结点兄弟结点 3 叶结点叶结点 4 兄弟结点兄弟结点 5 叶结点叶结点 叶结点叶结点图图1.16 一个层次模型的示例一个层次模型的示例77层次数据模型的数据结构层次数据模型的数据结构(续续)v层次模型的特点:结点的双亲是唯一的结点的双亲是唯一的只能直接处理一对多的实体联系只能直接处理一对多的实体联系每个记录类型可以定义一个排序字段,也称为码字段每个记录类型可以定义一个排序字段,也称为码字段任何记录值只有按其路径查看时,才能显出它的全部意义任何记录值只有按其路径查看时,才能显出它的全部意义

21、没有一个子女记录值能够脱离双亲记录值而独立存在没有一个子女记录值能够脱离双亲记录值而独立存在78层次数据模型的数据结构层次数据模型的数据结构(续续)图1.17 教员学生层次数据库模型 根结点根结点记录型系的子女结点记录型系的子女结点记录型教员的双亲结点记录型教员的双亲结点叶结点叶结点叶结点叶结点字段字段79层次数据模型的数据结构层次数据模型的数据结构(续续)图1.18 教员学生层次数据库的一个值 80二、多对多联系在层次模型中的表示二、多对多联系在层次模型中的表示v多对多联系在层次模型中的表示用层次模型用层次模型间接间接表示多对多联系表示多对多联系方法方法将多对多联系将多对多联系分解分解成一对

22、多联系成一对多联系分解方法分解方法冗余结点法冗余结点法虚拟结点法虚拟结点法81三、层次模型的数据操纵与完整性约束三、层次模型的数据操纵与完整性约束 v层次模型的数据操纵层次模型的数据操纵查询插入删除更新 82层次模型的数据操纵与完整性约束(续)层次模型的数据操纵与完整性约束(续)v层次模型的完整性约束条件层次模型的完整性约束条件 无相应的双亲结点值就不能插入子女结点值如果删除双亲结点值,则相应的子女结点值也被同时删除更新操作时,应更新所有相应记录,以保证数据的一致性83四、层次数据模型的存储结构四、层次数据模型的存储结构v邻接法按照层次树前序遍历的顺序把所有记录值依次邻接存按照层次树前序遍历的

23、顺序把所有记录值依次邻接存放,即通过物理空间的位置相邻来实现层次顺序放,即通过物理空间的位置相邻来实现层次顺序84层次数据模型的存储结构(续)层次数据模型的存储结构(续)图图1.20 层次数据库及其实例层次数据库及其实例 A1A2C8C6C4B6C9C2B4C14C7C5C3B1A1图图1.21 邻接法邻接法 按邻接法存放图按邻接法存放图1.20(b)中以根记录中以根记录A1为首的层次为首的层次记录实例集记录实例集按邻接法存放图1.20(b)中以根记录A1为首的层次记录实例集 85层次数据模型的存储结构(续)层次数据模型的存储结构(续)v链接法用指引来反映数据之间的层次联系用指引来反映数据之间

24、的层次联系子女兄弟链接法子女兄弟链接法层次序列链接法层次序列链接法86层次数据模型的存储结构(续)层次数据模型的存储结构(续)n子女子女-兄弟链接法兄弟链接法每个记录设两类指针,分别指向最左边的子女(每个记录型对应一个)和最近的兄弟87层次数据模型的存储结构(续)层次数据模型的存储结构(续)v层次序列链接法层次序列链接法按树的前序穿越顺序链接各记录值88五、层次模型的优缺点五、层次模型的优缺点v优点层次模型的数据结构比较简单清晰层次模型的数据结构比较简单清晰 查询效率高,性能优于关系模型,不低于网状模型查询效率高,性能优于关系模型,不低于网状模型层次数据模型提供了良好的完整性支持层次数据模型提

25、供了良好的完整性支持v缺点多对多联系表示不自然多对多联系表示不自然对插入和删除操作的限制多,应用程序的编写比较对插入和删除操作的限制多,应用程序的编写比较复杂复杂 查询子女结点必须通过双亲结点查询子女结点必须通过双亲结点由于结构严密,层次命令趋于程序化由于结构严密,层次命令趋于程序化 891.3.4 网状模型网状模型v网状数据库系统采用网状数据库系统采用网状模型网状模型作为数据的组织方式作为数据的组织方式 v典型代表是典型代表是DBTG系统:系统:亦称CODASYL系统70年代由DBTG提出的一个系统方案奠定了数据库系统的基本概念、方法和技术v实际系统实际系统Cullinet Software

26、 Inc.公司的 IDMSUnivac公司的 DMS1100Honeywell公司的IDS/2HP公司的IMAGE901.网状数据模型的数据结构网状数据模型的数据结构v网状模型满足下面两个条件的基本层次联系的集合:满足下面两个条件的基本层次联系的集合:1. 允许一个以上的结点无双亲;允许一个以上的结点无双亲;2. 一个结点可以有多于一个的双亲一个结点可以有多于一个的双亲。91网状数据模型的数据结构(续)网状数据模型的数据结构(续)v表示方法(与层次数据模型相同)实体型实体型:用记录类型描述:用记录类型描述 每个结点表示一个记录类型(实体)每个结点表示一个记录类型(实体)属性属性:用字段描述:用

27、字段描述 每个记录类型可包含若干个字段每个记录类型可包含若干个字段联系联系:用结点之间的连线表示记录类:用结点之间的连线表示记录类型型(实体)之(实体)之 间的间的一对多的父子联系一对多的父子联系92网状数据模型的数据结构(续)网状数据模型的数据结构(续)v网状模型与层次模型的区别网状模型允许多个结点没有双亲结点网状模型允许多个结点没有双亲结点网状模型允许结点有多个双亲结点网状模型允许结点有多个双亲结点网状模型允许两个结点之间有多种联系(复合联系)网状模型允许两个结点之间有多种联系(复合联系)网状模型可以更直接地去描述现实世界网状模型可以更直接地去描述现实世界层次模型实际上是网状模型的一个特例

28、层次模型实际上是网状模型的一个特例93网状数据模型的数据结构(续)网状数据模型的数据结构(续)v网状模型中子女结点与双亲结点的联系可以不唯一要为每个联系命名,并指出与该联系有关的双亲记录和子女记录 R1与与R3之间的之间的联系联系L1R2与与R3之间的之间的联系联系L2 94网状数据模型的数据结构(续)网状数据模型的数据结构(续)网状模型的例子 95网状数据模型的数据结构(续)网状数据模型的数据结构(续)多对多联系在网状模型中的表示用网状模型用网状模型间接间接表示多对多联系表示多对多联系方法:方法: 将多对多联系将多对多联系直接直接分解成一对多联系分解成一对多联系96网状数据模型的数据结构(续

29、)网状数据模型的数据结构(续)例如:一个学生可以选修若干门课程,某一课程可以被多个学生选修,学生与课程之间是多对多联系 n引进一个学生选课的联结记录,由3个数据项组成学号课程号成绩表示某个学生选修某一门课程及其成绩 97网状数据模型的数据结构(续)网状数据模型的数据结构(续)图1.24 学生/选课/课程的网状数据模型 98网状数据模型的操纵与完整性约束(续)网状数据模型的操纵与完整性约束(续)v网状数据库系统(如DBTG)对数据操纵加 了一些限制,提供了一定的完整性约束码:唯一标识记录的数据项的集合码:唯一标识记录的数据项的集合 一个联系中双亲记录与子女记录之间是一对多联系一个联系中双亲记录与

30、子女记录之间是一对多联系支持双亲记录和子女记录之间某些约束条件支持双亲记录和子女记录之间某些约束条件 99三、网状数据模型的存储结构三、网状数据模型的存储结构v关键实现记录之间的联系实现记录之间的联系v常用方法单向链接单向链接双向链接双向链接环状链接环状链接向首链接向首链接100网状数据模型的存储结构(续)网状数据模型的存储结构(续)图1.25 学生/选课/课程的网状数据库实例 学生记录学生记录课程记录课程记录选课记录选课记录101四、网状数据模型的优缺点四、网状数据模型的优缺点v优点能够更为直接地描述现实世界,如一个结点可以有多个双亲能够更为直接地描述现实世界,如一个结点可以有多个双亲具有良

31、好的性能,存取效率较高具有良好的性能,存取效率较高v缺点结构比较复杂,而且随着应用环境的扩大,数据库的结构就结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握变得越来越复杂,不利于最终用户掌握DDL、DML语言复杂,用户不容易使用语言复杂,用户不容易使用102 1.2 数据模型数据模型 1.2.1 两大类数据模型两大类数据模型 1.2.2 数据模型的组成要素数据模型的组成要素 1.2.3 概念模型概念模型 1.2.4 最常用的数据模型最常用的数据模型 1.2.5 层次模型层次模型 1.2.6 网状模型网状模型 1.2.7 关系模型关系模型1031.3.4 关

32、系模型关系模型v关系数据库系统采用关系模型作为数据的组织方式 v1970年美国IBM公司San Jose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型 v计算机厂商新推出的数据库管理系统几乎都支持关系模型 104一、关系数据模型的数据结构一、关系数据模型的数据结构 v在在用用户户观观点点下下,关关系系模模型型中中数数据据的的逻逻辑辑结结构构是是一一张张二二维维表表,它它由由行行和和列列组成。组成。学 号姓 名年 龄性 别系 名年 级2005004王小明19女社会学20052005006黄大鹏20男商品学20052005008张文斌18女法律2005学生登记表学生登记表属性属性元组

33、元组105关系数据模型的数据结构(续)关系数据模型的数据结构(续)关系(关系(Relation)一个关系对应通常说的一张表元组(元组(Tuple)表中的一行即为一个元组属性(属性(Attribute) 表中的一列即为一个属性,给每一个属性起一个名称即属性名106关系数据模型的数据结构(续)关系数据模型的数据结构(续)主码(主码(Key)表中的某个属性组,它可以唯一确定一个元组。域(域(Domain)属性的取值范围。分量分量元组中的一个属性值。关系模式关系模式对关系的描述关系名(属性1,属性2,属性n)学生(学号,姓名,年龄,性别,系,年级)107关系数据模型的数据结构(续)关系数据模型的数据结

34、构(续)例1学生、系、系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)系系 (系号,系名,办公地点系号,系名,办公地点)例2系、系主任、系与系主任间的一对一联系108关系数据模型的数据结构(续)关系数据模型的数据结构(续)例3学生、课程、学生与课程之间的多对多联系: 学生(学号,姓名,年龄,性别,系号,年级)学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)课程(课程号,课程名,学分)选修(学号,课程号,成绩)选修(学号,课程号,成绩)109关系数据模型的数据结构(续)关系数据模型的数据结构(续)v关系必须是规范

35、化的,满足一定的规范条件关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不可分的数据项, 不允许表中还有表 图图1.27中工资和扣除是可分的数据项中工资和扣除是可分的数据项 ,不符合关系模型要求不符合关系模型要求 职工号姓名职 称工 资扣 除实 发基 本津 贴职务房 租水 电86051陈 平讲 师13051200501601122283图图1.27 一个工资表一个工资表(表中有表表中有表)实例实例 110关系数据模型的数据结构(续)关系数据模型的数据结构(续)关系术语一般表格的术语关系名表名关系模式表头(表格的描述)关系(一张)二维表元组记录或行属性列属性名列

36、名属性值列值分量一条记录中的一个列值非规范关系表中有表(大表中嵌有小表)表表1.2 术语对比术语对比 111二、关系数据模型的操纵与完整性约束二、关系数据模型的操纵与完整性约束v数据操作是集合操作,操作对象和操作结果都是关系数据操作是集合操作,操作对象和操作结果都是关系查询插入删除更新v数数据据操操作作是是集集合合操操作作,操操作作对对象象和和操操作作结结果果都都是是关关系系,即即若若干干元元组组的的集合集合v存存取取路路径径对对用用户户隐隐蔽蔽,用用户户只只要要指指出出“干干什什么么”,不不必必详详细细说说明明“怎怎么干么干”112关系数据模型的操纵与完整性约束(续)关系数据模型的操纵与完整

37、性约束(续)v关系的完整性约束条件 实体完整性参照完整性用户定义的完整性113三、关系数据模型的存储结构三、关系数据模型的存储结构v实体及实体间的联系都用表来表示v表以文件形式存储有的DBMS一个表对应一个操作系统文件有的DBMS自己设计文件结构114四、关系数据模型的优缺点四、关系数据模型的优缺点v优点优点建立在严格的数学概念的基础上建立在严格的数学概念的基础上概念单一概念单一实体和各类联系都用关系来表示对数据的检索结果也是关系关系模型的存取路径对用户透明关系模型的存取路径对用户透明具有更高的数据独立性,更好的安全保密性简化了程序员的工作和数据库开发建立的工作115关系数据模型的优缺点(续)

38、关系数据模型的优缺点(续)v缺点缺点存取路径对用户透明导致查询效率往往不如非 关系数据模型为提高性能,必须对用户的查询请求进行优化 增加了开发DBMS的难度1161.4 数据库系统数据库系统体系体系结构结构v从数据库管理系统角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构 v从数据库最终用户角度看(数据库系统外部的体系结构) ,数据库系统的结构分为:单用户结构主从式结构分布式结构客户服务器浏览器应用服务器数据库服务器多层结构等1171.4.1数据库三级模式结构数据库三级模式结构v“型” 和“值” 的概念型(Type)对某一类数据的结构和属性的说明值(Value)是型的一个具体

39、赋值例如学生记录型: (学号,姓名,性别,系别,年龄,籍贯)一个记录值: (900201,李明,男,计算机,22,江苏)118数据库系统模式的概念(续)数据库系统模式的概念(续)v模式(模式(Schema)数据库逻辑结构和特征的描述数据库逻辑结构和特征的描述是型的描述是型的描述反映的是数据的结构及其联系反映的是数据的结构及其联系模式是相对稳定的模式是相对稳定的v实例(实例(Instance)模式的一个具体值模式的一个具体值反映数据库某一时刻的状态反映数据库某一时刻的状态同一个模式可以有很多实例同一个模式可以有很多实例实例随数据库中的数据的更新而变动实例随数据库中的数据的更新而变动119数据库系

40、统模式的概念数据库系统模式的概念 (续)(续)例如:在学生选课数据库模式中,包含学生记录、课程记录和学生选课记录 2003年的一个学生数据库实例,包含:2003年学校中所有学生的记录学校开设的所有课程的记录所有学生选课的记录 2002年度学生数据库模式对应的实例与 2003年度学生数据库模式对应的实例是不同的 1201.3.1 数据库系统的三级模式结构数据库系统的三级模式结构v模式(Schema) v外模式(External Schema)v内模式(Internal Schema) 121数据库系统的三级模式结构(续)数据库系统的三级模式结构(续)图1.28 数据库系统的三级模式结构 122一

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

42、之间的联系数据有关的安全性、完整性要求数据有关的安全性、完整性要求124二、外模式(二、外模式(External Schema)v外模式(也称子模式或用户模式)数数据据库库用用户户(包包括括应应用用程程序序员员和和最最终终用用户户)使使用用的的局局部部数数据据的逻辑结构和特征的描述的逻辑结构和特征的描述数数据据库库用用户户的的数数据据视视图图,是是与与某某一一应应用用有有关关的的数数据据的的逻逻辑辑表表示示125外模式(续)外模式(续)v外模式的地位:介于模式与应用之间模式与外模式的关系:一对多外模式通常是模式的子集外模式通常是模式的子集一一个个数数据据库库可可以以有有多多个个外外模模式式。反

43、反映映了了不不同同的的用用户户的的应应用用需需求求、看看待待数据的方式、对数据保密的要求数据的方式、对数据保密的要求对对模模式式中中同同一一数数据据,在在外外模模式式中中的的结结构构、类类型型、长长度度、保保密密级级别别等等都都可以不同可以不同外模式与应用的关系:一对多同一外模式也可以为某一用户的多个应用系统所使用同一外模式也可以为某一用户的多个应用系统所使用但一个应用程序只能使用一个外模式但一个应用程序只能使用一个外模式126外模式(续)外模式(续)v外模式的用途n保证数据库安全性的一个有力措施保证数据库安全性的一个有力措施n每个用户只能看见和访问所对应的外模式中的数据每个用户只能看见和访问

44、所对应的外模式中的数据127三、内模式(三、内模式(Internal Schema)v内模式(也称存储模式)是数据物理结构和存储方式的描述是数据物理结构和存储方式的描述是数据在数据库内部的表示方式是数据在数据库内部的表示方式记录的存储方式(顺序存储,按照记录的存储方式(顺序存储,按照B树结构存储,树结构存储, 按按hash方法存储)方法存储)索引的组织方式索引的组织方式数据是否压缩存储数据是否压缩存储数据是否加密数据是否加密数据存储记录结构的规定数据存储记录结构的规定v一个数据库只有一个内模式128内模式(续)内模式(续)v例如学生记录,如果按堆堆存储,则插入一条新记录总是放在学生记录存储的最

45、后最后,如右图所示129内模式(续)内模式(续)v如果按学号升序存储,则插入一条记录就要找到它应在的位置插入,如图1.29(b)所示v如果按照学生年龄聚簇存放,假如新插入的S3是16岁,则应插入的位置如图1.29(c)所示 图1.29 记录不同的存储方式示意图1301.3.1 数据库的二级映像功能与数据独立性数据库的二级映像功能与数据独立性v三级模式是对数据的三个抽象级别v二级映象在DBMS内部实现这三个抽象层次的联系和转换外模式模式映像模式内模式映像 131一、外模式模式映象一、外模式模式映象v模式:描述的是数据的全局逻辑结构v外模式:描述的是数据的局部逻辑结构 v同一个模式可以有任意多个外

46、模式 v每一个外模式,数据库系统都有一个外模式模式映象,定义外模式与模式之间的对应关系v映象定义通常包含在各自外模式的描述中132外模式模式映象(续)外模式模式映象(续)保证数据的逻辑独立性当当模模式式改改变变时时,数数据据库库管管理理员员修修改改有有关关的的外外模模式式模模式映象,使外模式保持不变式映象,使外模式保持不变应应用用程程序序是是依依据据数数据据的的外外模模式式编编写写的的,从从而而应应用用程程序序不不必必修修改改,保保证证了了数数据据与与程程序序的的逻逻辑辑独独立立性性,简简称称数数据的逻辑独立性据的逻辑独立性。133二、模式内模式映象二、模式内模式映象v模式内模式映象定义了数据

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

48、局逻辑结构是数据库的中心与关键 独立于数据库的其他层次 设计数据库模式结构时应首先确定数据库的逻辑模式136模式内模式映象(续)模式内模式映象(续)v数据库的内模式依赖于它的全局逻辑结构独立于数据库的用户视图,即外模式独立于具体的存储设备 将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以达到较好的时间与空间效率 137模式内模式映象(续)模式内模式映象(续)v数据库的外模式面向具体的应用程序定义在逻辑模式之上独立于存储模式和存储设备当应用需求发生较大变化,相应外模式不能满足其视图要求时,该外模式就得做相应改动 设计外模式时应充分考虑到应用的扩充性 138模式内模式映象

49、(续)模式内模式映象(续)v特定的应用程序在外模式描述的数据结构上编制的依赖于特定的外模式与数据库的模式和存储结构独立不同的应用程序有时可以共用同一个外模式v数据库的二级映像保证了数据库外模式的稳定性从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改 139模式内模式映象(续)模式内模式映象(续)v数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去 v数据的存取由DBMS管理用户不必考虑存取路径等细节简化了应用程序的编制大大减少了应用程序的维护和修改 1401.5 1.5 小结小结v数据库系统概述数据库的基本概念数据管理的发展过程v数据模型数据模型的三要素概念模型三种主要数据库模型141小结小结(续续)v数据库系统的结构数据库系统三级模式结构数据库系统两层映像系统结构v数据库系统的组成142 下课了。下课了。追求追求休息一会儿。休息一会儿。143

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号