




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章绪论(续)数据库原理及应用PrincipleandApplicationofDatabase数据库原理及应用第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述1.2数据模型1.2.1概念模型1.2.2数据模型的组成要素1.2.3最常用的数据模型1.2.4层次模型(*)1.2.5网状模型(*)
1.2.6关系模型1.2数据模型1.2.1概念模型1.2.6关系模型1.关系数据模型的数据结构2.关系数据模型的数据操纵3.关系数据模型的完整性约束4.关系数据模型的存储结构5.关系数据模型的优缺点6.典型的关系数据库系统
1.2.6关系模型1.关系数据模型的数据结构关系模型最重要的一种数据模型。也是目前主要采用的数据模型1970年由美国IBM公司SanJose研究室的研究员E.F.Codd提出本课程的重点关系模型最重要的一种数据模型。也是目前主要采用的数据模型关系模型的数据结构及术语在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。关系模型的数据结构及术语在用户观点下,关系模型中数据的逻辑结关系模型的基本概念关系(Relation)一个关系对应通常说的一张表。元组(Tuple)表中的一行即为一个元组。属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名。关系模型的基本概念关系(Relation)关系模型的基本概念主码(Key)表中的某个属性组,它可以唯一确定一个元组。域(Domain)属性的取值范围。分量元组中的一个属性值。关系模式对关系的描述关系名(属性1,属性2,…,属性n)学生(学号,姓名,年龄,性别,系,年级)关系模型的基本概念主码(Key)关系数据模型的数据结构(续)实体及实体间的联系的表示方法实体型:直接用关系(表)表示。属性:用属性名表示。一对一联系:隐含在实体对应的关系中。一对多联系:隐含在实体对应的关系中。多对多联系:直接用关系表示。关系数据模型的数据结构(续)实体及实体间的联系的表示方法关系数据模型的数据结构(续)例1学生、系,系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)系(系号,系名,办公地点)例2系、系主任,系与系主任间的一对一联系系(系号,系名,系主任名,办公地点)关系数据模型的数据结构(续)例1关系数据模型的数据结构(续)例3学生、课程、学生与课程之间的多对多联系:
学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)选修(学号,课程号,成绩)关系数据模型的数据结构(续)例3关系数据模型的数据结构(续)关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不可分的数据项。图1.27中工资和扣除是可分的数据项,不符合关系模型要求
图1.27一个工资表(表中有表)实例关系数据模型的数据结构(续)关系必须是规范化的,满足一定的规关系数据模型的数据结构(续)不是规范化的关系例:关系数据模型的数据结构(续)不是规范化的关系例:关系数据模型的数据结构(续)关系术语一般表格的术语关系名表名关系模式表头(表格的描述)关系(一张)二维表元组记录或行属性列属性名列名属性值列值分量一条记录中的一个列值非规范关系表中有表(大表中嵌有小表)表1.2术语对比关系数据模型的数据结构(续)关系术语一般表格的术语关系名表名2.关系模型的数据操纵查询、插入、删除、更新数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么干”2.关系模型的数据操纵查询、插入、删除、更新3.关系模型的完整性约束实体完整性参照完整性用户定义的完整性3.关系模型的完整性约束实体完整性4.关系数据模型的存储结构表以文件形式存储有的DBMS一个表对应一个操作系统文件有的DBMS自己设计文件结构4.关系数据模型的存储结构表以文件形式存储5.关系模型的优缺点优点建立在严格的数学概念的基础上概念单一。数据结构简单、清晰,用户易懂易用实体和各类联系都用关系来表示。对数据的操作结果也是关系。关系模型的存取路径对用户透明具有更高的数据独立性,更好的安全保密性简化了程序员的工作和数据库开发建立的工作5.关系模型的优缺点优点关系模型的优缺点(续)缺点存取路径对用户透明导致查询效率往往不如非关系数据模型为提高性能,必须对用户的查询请求进行优化增加了开发数据库管理系统的难度关系模型的优缺点(续)缺点6.典型的关系数据库系统ORACLESYBASEINFORMIXDB/2COBASEPBASEEasyBaseDM/2OpenBaseSQLServerKingBase6.典型的关系数据库系统ORACLE表1.2层次、网状、关系模型比较表比较项层次模型网状模型关系模型创始1968年IBM公司的IMS系统1969年CODASYL的DBTG报告(1971年通过)1970年E.F.Codd提出关系模型典型产品IMSIDS/Ⅱ,IMAGE/3000,IDMS等Oracle,Sybase,DB2,SQLServer等盛行时期20世纪70年代20世纪70年代到80年代中期20世纪80年代至今数据结构复杂(树形结构),要加树形限制复杂(有向图结构),结构上无需严格限制简单(二维表),无需严格限制数据联系通过指针连接记录型,联系单一通过指针连接记录型,联系多样,较复杂通过联系表(含外码),联系多样查询语言过程式,一次一记录。查询方式单一(双亲到子女)过程式,一次一记录。查询方式多样非过程式,一次一集合。查询方式多样实现难易在计算机中实现较方便在计算机中实现较困难在计算机中实现较方便数学理论基础树(研究不规范,不透彻)无向图(研究不规范,不透彻)关系理论(关系代数、关系演算),研究深入、透彻、表1.2层次、网状、关系模型比较表比较项层次模型网状模型关现实世界、信息世界、机器世界/关系数据库间术语对照表现实世界信息世界机器世界/关系数据库事物实体记录/元组(或行)若干同类事物实体集记录集(即文件)/元组集(即关系)若干特征刻画的事物实体型记录型/二维表框架(即关系模式)事物的特征属性字段(或数据项)/属性(或列)事物之间的关联实体型(或实体)之间的联系记录型之间的联系/联系表(外码)事物某特征的所有可能值域字段类型/域事物某特征的一个具体值一个属性值字段值/分量可区分同类事物的特征或若干特征码关键字段/关系键(或主码)现实世界、信息世界、机器世界/关系数据库间术语对照表现实世界第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述数据库系统的体系结构是数据库系统的一个总的框架。尽管实际的数据库系统的软件产品多种多样(支持不同的数据模型、使用不同的数据库语言、建立在不同的操作系统之上、数据的存储结构也各不相同),但绝大多数的数据库系统在总的体系结构上都具有三级模型结构的结构特征,正因为此,数据库系统才具有数据独立性的重要特征。1.3数据库系统结构数据库系统的体系结构是数据库系统的一个总的框从数据管理的角度来看,与数据库打交道的有三类人员:用户、应用程序员和系统程序员。由于他们对数据库的认识、理解和接触范围各不相同,从而形成了各自的数据库视图。
1.3数据库系统结构从数据管理的角度来看,与数据库打交道的有三类人员:1.3数所谓视图是指观察、认识和理解数据的范围、角度和方法。根据各类人员与数据库的不同关系,可把视图分为三种:即对应于用户的外部视图、对应于应用程序员的概念视图和对应于系统程序员的内部视图。由此形成数据库系统的三级模式结构:外模式、概念模式和内模式。1.3数据库系统结构所谓视图是指观察、认识和理解数据的范围、角度和方法。1.31.3.1数据库系统模式的概念从数据库管理系统角度看数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3.1数据库系统模式的概念从数据库管理系统角度看数据库系统模式的概念“型”和“值”的概念型(Type)对某一类数据的结构和属性的说明值(Value)是型的一个具体赋值例如:学生记录记录型:(学号,姓名,性别,系别,年龄,籍贯)该记录型的一个记录值:(900201,李明,男,计算机,22,江苏)数据库系统模式的概念“型”和“值”的概念数据库系统模式的概念(续)模式(Schema)数据库逻辑结构和特征的描述是型的描述反映的是数据的结构及其联系模式是相对稳定的模式的一个实例(Instance)模式的一个具体值反映数据库某一时刻的状态同一个模式可以有很多实例实例随数据库中的数据的更新而变动数据库系统模式的概念(续)模式(Schema)1.3.2数据库系统的模式结构数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3.2数据库系统的模式结构数据库系统模式的概念用户A1用户A2用户B1用户B2…………外视图A……外模式A外视图B外模式B概念模式概念视图存储结构定义(内模式)存储数据库(内视图)……DBMS由数据库管理员建立和维护的模式……1.3.2数据库系统的模式结构用户A1用户A2用户B1用户B2…………外视图A……外模式A数据库系统的三级模式结构数据库系统的三级模式结构1.模式(Schema)模式(也称逻辑模式)数据库中全体数据的逻辑结构和特征的描述所有用户的公共数据视图,综合了所有用户的需求一个数据库只有一个模式模式的地位:是数据库系统模式结构的中间层与数据的物理存储细节和硬件环境无关与具体的应用程序、开发工具及高级程序设计语言无关模式的定义数据的逻辑结构(数据项的名字、类型、取值范围等)数据之间的联系数据有关的安全性、完整性要求1.模式(Schema)模式(也称逻辑模式)2.外模式(ExternalSchema)外模式(也称子模式或用户模式)数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述数据库用户的数据视图,是与某一应用有关的数据的逻辑表示2.外模式(ExternalSchema)外模式(也称子外模式(续)外模式的地位:介于模式与应用之间模式与外模式的关系:一对多外模式通常是模式的子集一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同外模式与应用的关系:一对多同一外模式也可以为某一用户的多个应用系统所使用,但一个应用程序只能使用一个外模式。外模式(续)外模式的地位:介于模式与应用之间外模式(续)外模式的用途保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据外模式(续)外模式的用途3.内模式(InternalSchema)内模式(也称存储模式)是数据物理结构和存储方式的描述是数据在数据库内部的表示方式记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规定一个数据库只有一个内模式3.内模式(InternalSchema)内模式(也称存储1.3.3数据库的二级映象功能与数据独立性数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3.3数据库的二级映象功能与数据独立性数据库系统模式的概三级模式与二级映象三级模式是对数据的三个抽象级别二级映象在DBMS内部实现这三个抽象层次的联系和转换为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映象:外模式/模式映象,模式/内模式映象。
这两层映象保证了数据库系统的数据能够具有较高的逻辑独立性和物理独立性。三级模式与二级映象三级模式是对数据的三个抽象级别数据库系统的三级模式结构数据库系统的三级模式结构1.外模式/模式映象定义外模式与模式之间的对应关系每一个外模式都对应一个外模式/模式映象映象定义通常包含在各自外模式的描述中1.外模式/模式映象外模式/模式映象的用途保证数据的逻辑独立性当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。外模式/模式映象的用途保证数据的逻辑独立性2.模式/内模式映象模式/内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的数据库中模式/内模式映象是唯一的该映象定义通常包含在模式描述中2.模式/内模式映象模式/内模式映象的用途保证数据的物理独立性当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。模式/内模式映象的用途保证数据的物理独立性1.3数据库系统的体系结构数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3数据库系统的体系结构数据库系统模式的概念数据库系统三级模式结构概念比较比较
外模式
模式
内模式
定义
也称子模式或用户模式,还称用户级模式
也称逻辑模式,还称概念级模式
也称存储模式,还称物理级模式
是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述
是数据库中全体数据的逻辑结构和特征的描述,它包括:数据的逻辑结构、数据之间的联系和与数据有关的安全性、完整性要求。
它是数据物理结构和存储方式的描述。特点1
是各个具体用户所看到的数据视图,是用户与DB的接口。
是所有用户的公共数据视图。一般只有DBA能看到全部
数据在数据库内部的表示方式。特点2
可以有多个外模式
只有一个模式
只有一个内模式数据库系统三级模式结构概念比较比较外模式模式内模式也数据库系统三级模式结构概念比较(续)比较
外模式
模式
内模式
特点3
针对不同用户,有不同的外模式描述。每个用户只能看见和访问所对应的外模式中的数据,数据库中其余数据是不可见的。所以外模式是保证数据库安全性的一个有力措施。
数据库模式以某一种数据模型(层状、网状、关系)为基础,统一综合地考虑所有用户的需求,并将这些需求有机地结合成一个逻辑整体。以前由DBA定义,现基本由DBMS定义。
特点4
面向应用程序或最终用户。由DBA定义与管理。
由DBA定义或由DBMS预先设置。
DDL
DBMS提供三种模式的描述语言(DDL)来严格定义三种模式。如:子模式DDL、模式DDL和内模式DDL。子模式DDL和用户选用的程序设计语言具有相容的语法。如:Cobol子模式DDL。关系数据库三种模式的描述语言统一于SQL语言中。
数据库系统三级模式结构概念比较(续)比较外模式模式内模小结模式是数据库的中心与关键独立于数据库的其它层次设计数据库模式结构时应首先确定数据库的逻辑模式小结模式小结(续)内模式依赖于全局逻辑结构,但独立于数据库的用户视图即外模式,也独立于具体的存储设备。它将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以达到较好的时间与空间效率。小结(续)内模式小结(续)外模式面向具体的应用程序,定义在逻辑模式之上,但独立于存储模式和存储设备设计外模式时应充分考虑到应用的扩充性。当应用需求发生较大变化,相应外模式不能满足其视图要求时,该外模式就得做相应改动小结(续)外模式小结(续)应用程序在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据库的模式和存储结构独立。不同的应用程序有时可以共用同一个外模式。小结(续)应用程序小结(续)二级映象保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改。数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。小结(续)二级映象第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述1.4数据库系统的组成数据库数据库管理系统(及其开发工具)应用系统数据库管理员(用户)1.4数据库系统的组成数据库一、硬件平台及数据库数据库系统对硬件资源的要求(1)足够大的内存操作系统DBMS的核心模块数据缓冲区应用程序一、硬件平台及数据库数据库系统对硬件资源的要求数据库系统对硬件资源的要求(2)足够大的外存磁盘操作系统DBMS应用程序数据库及其备份光盘、磁带、软盘数据备份(3)较高的通道能力,提高数据传送率数据库系统对硬件资源的要求(2)足够大的外存二、软件DBMS操作系统与数据库接口的高级语言及其编译系统以DBMS为核心的应用开发工具为特定应用环境开发的数据库应用系统二、软件DBMS三、人员数据库管理员系统分析员数据库设计人员应用程序员(最终用户)三、人员数据库管理员1.数据库管理员(DBA)决定数据库中的信息内容和结构决定数据库的存储结构和存取策略定义数据的安全性要求和完整性约束条件1.数据库管理员(DBA)决定数据库中的信息内容和结构数据库管理员(续)监控数据库的使用和运行周期性转储数据库数据文件日志文件系统故障恢复介质故障恢复监视审计文件数据库管理员(续)监控数据库的使用和运行数据库管理员(续)数据库的改进和重组性能监控和调优数据重组:数据库运行一段时间后,由于记录不断增、删改,会使数据库的物理存储情况变坏,降低了数据的存去效率,数据库性能下降,需要由DBA按原设计要求重新安排存储位置,回收垃圾,减少指针链等,提高系统性能。数据库重构由于数据库应用环境发生变化,使原有的数据库设计不能满足新的要求,需要调整数据库的模式和内模式。数据库管理员(续)数据库的改进和重组2.系统分析员负责应用系统的需求分析和规范说明与用户及DBA协商,确定系统的硬软件配置参与数据库系统的概要设计2.系统分析员负责应用系统的需求分析和规范说明3.系统分析员和数据库设计人员参加用户需求调查和系统分析确定数据库中的数据设计数据库各级模式3.系统分析员和数据库设计人员参加用户需求调查和系统分析4.应用程序员设计和编写应用系统的程序模块进行调试和安装4.应用程序员设计和编写应用系统的程序模块5.用户偶然用户企业或组织机构的高中级管理人员简单用户银行的职员、机票预定人员、旅馆总台服务员5.用户偶然用户用户(续)复杂用户工程师、科学家、经济学家、科技工作者等直接使用数据库语言访问数据库,甚至能够基于数据库管理系统的API编制自己的应用程序用户(续)复杂用户第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4
数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述1.5数据库技术的研究领域数据库管理系统软件的研制数据库设计数据库理论1.5数据库技术的研究领域数据库管理系统软件的研制数据库管理系统软件的研制DBMS核心一组相互联系的软件系统工具软件中间件数据库管理系统软件的研制DBMS核心数据库设计数据库设计方法设计工具设计理论数据模型和数据建模数据库设计数据库设计方法数据库理论关系的规范化理论关系数据理论数据库理论关系的规范化理论第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4
数据库系统的组成1.5数据库技术的研究领域小结第一章绪论1.1数据库系统概述小结数据库系统概述数据库的基本概念数据管理的发展过程数据库系统的研究领域数据模型数据模型的三要素概念模型,E-R模型三种主要数据模型小结数据库系统概述小结(续)数据库系统的结构数据库系统三级模式结构数据库系统的体系结构数据库系统的组成小结(续)数据库系统的结构习题一、选择题1、()是位于用户与操作系统之间的一层数据管理软件。数据库在建立、使用和维护时由其统一管理、统一控制。A.DBMSB.DBC.DBSD.DBA2、文字、图形、图像、声音、学生的档案记录、货物的运输情况等,这些都是()A.DATAB.DBSC.DBD.其他3、目前()数据库系统已逐渐淘汰了网状数据库和层次数据库,成为当今最为流行的商用数据库系统。A.关系B.面向对象C.分布D.对象-关系4、()是刻画一个数据模型性质最重要的方面。因此在数据库系统中,人们通常按它的类型来命名数据模型。A.数据结构B.数据操纵C.完整性约束D.数据联系5、()属于信息世界的模型,实际上是现实世界到机器世界的一个中间层次。A.数据模型B.概念模型C.非关系模型D.关系模型习题习题6、当数据库的()改变了,由数据库管理员对()映象作相应改变,可以使()保持不变,从而保证了数据的物理独立性。(1)模式(2)存储结构(3)外模式/模式(4)用户模式(5)模式/内模式A.(1)和(3)和(4)B.(1)和(5)和(3)C.(2)和(5)和(1)D.(1)和(2)和(4)7、数据库的三级体系结构即子模式、模式与内模式是对()的三个抽象级别。A.信息世界B.数据库系统C.数据D.数据库管理系统8、英文缩写DBA代表()A.数据库管理员B.数据库管理系统C.数据定义语言D.数据操纵语言9、模式和内模式()。A.只能各有一个B.最多只能有一个C.至少两个D.可以有多个习题10、在数据库中存储的是()。A.数据B.信息C.数据和数据之间的联系D.数据模型的定义二、填空题1、数据库就是长期储存在计算机内_________、_________的数据集合。2、数据管理技术已经历了人工管理阶段、___________和___________三个发展阶段。3、数据模型通常都是由_________、_________和__________三个要素组成。4、数据库系统的主要特点:___________________、数据冗余度小、具有较高的数据程序独立性、具有统一的数据控制功能等。5、用二维表结构表示实体以及实体间联系的数据模型称为_____________数据模型。6、在数据库的三级模式体系结构中,外模式与模式之间的映象,实现了数据库的____________独立性。7、数据库系统是以____为中心的系统。8、E-R图表示的概念模型比________更一般、更抽象、更接近现实世界。习题10、在数据库中存储的是()。习题9、外模式,亦称为子模式或用户模式,是__________能够看到和使用的局部数据的逻辑结构和特征的描述。10、数据库系统的软件主要包括支持__________运行的操作系统以及_________本身。三、简答题1、简述计算机数据管理技术发展的三个阶段。2、常用的三种数据模型的数据结构各有什么特点?3、试述数据库系统的特点。4、试述数据模型的概念、数据模型的作用和数据模型的三要素。5、试述概念模型的作用。6、定义并理解概念模型中的以下术语:实体、实体型、实体集、属性、码、实体联系图(E-R图)、三种联系类型7、学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教师,每个教师只教一门课,每门课可由多个教师教;每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。请用E-R图画出该学校的概念模型,注明联系类型。习题9、外模式,亦称为子模式或用户模式,是__________能8、每种工厂生产的产品由不同的零件组成,有的零件可用于不同的产品。这些零件由不同的原材料制成,不同的零件所用的材料可以相同。一个仓库存放多种产品,一种产品存放在一个仓库中。零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中(不跨仓库存放)。请用E-R图画出此关于产品,零件,材料,仓库的概念模型,注明联系类型。9、分别给出一个层次、网状和关系模型的实例。10、试述层次、网状和关系数据库的优缺点。11、定义并理解关系模型中的以下术语:关系、元组、属性、主码、域、分量、关系模式12、数据库系统的三级模式结构是什么?为什么要采用这样的结构?13、数据独立性包括哪两个方面,含义分别是什么?14、数据库管理系统有哪些主要功能?15、数据库管理系统通常由哪几部分组成?习题习题休息一会儿。。。休息一会儿。。。第一章绪论(续)数据库原理及应用PrincipleandApplicationofDatabase数据库原理及应用第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述1.2数据模型1.2.1概念模型1.2.2数据模型的组成要素1.2.3最常用的数据模型1.2.4层次模型(*)1.2.5网状模型(*)
1.2.6关系模型1.2数据模型1.2.1概念模型1.2.6关系模型1.关系数据模型的数据结构2.关系数据模型的数据操纵3.关系数据模型的完整性约束4.关系数据模型的存储结构5.关系数据模型的优缺点6.典型的关系数据库系统
1.2.6关系模型1.关系数据模型的数据结构关系模型最重要的一种数据模型。也是目前主要采用的数据模型1970年由美国IBM公司SanJose研究室的研究员E.F.Codd提出本课程的重点关系模型最重要的一种数据模型。也是目前主要采用的数据模型关系模型的数据结构及术语在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。关系模型的数据结构及术语在用户观点下,关系模型中数据的逻辑结关系模型的基本概念关系(Relation)一个关系对应通常说的一张表。元组(Tuple)表中的一行即为一个元组。属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名。关系模型的基本概念关系(Relation)关系模型的基本概念主码(Key)表中的某个属性组,它可以唯一确定一个元组。域(Domain)属性的取值范围。分量元组中的一个属性值。关系模式对关系的描述关系名(属性1,属性2,…,属性n)学生(学号,姓名,年龄,性别,系,年级)关系模型的基本概念主码(Key)关系数据模型的数据结构(续)实体及实体间的联系的表示方法实体型:直接用关系(表)表示。属性:用属性名表示。一对一联系:隐含在实体对应的关系中。一对多联系:隐含在实体对应的关系中。多对多联系:直接用关系表示。关系数据模型的数据结构(续)实体及实体间的联系的表示方法关系数据模型的数据结构(续)例1学生、系,系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)系(系号,系名,办公地点)例2系、系主任,系与系主任间的一对一联系系(系号,系名,系主任名,办公地点)关系数据模型的数据结构(续)例1关系数据模型的数据结构(续)例3学生、课程、学生与课程之间的多对多联系:
学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)选修(学号,课程号,成绩)关系数据模型的数据结构(续)例3关系数据模型的数据结构(续)关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不可分的数据项。图1.27中工资和扣除是可分的数据项,不符合关系模型要求
图1.27一个工资表(表中有表)实例关系数据模型的数据结构(续)关系必须是规范化的,满足一定的规关系数据模型的数据结构(续)不是规范化的关系例:关系数据模型的数据结构(续)不是规范化的关系例:关系数据模型的数据结构(续)关系术语一般表格的术语关系名表名关系模式表头(表格的描述)关系(一张)二维表元组记录或行属性列属性名列名属性值列值分量一条记录中的一个列值非规范关系表中有表(大表中嵌有小表)表1.2术语对比关系数据模型的数据结构(续)关系术语一般表格的术语关系名表名2.关系模型的数据操纵查询、插入、删除、更新数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么干”2.关系模型的数据操纵查询、插入、删除、更新3.关系模型的完整性约束实体完整性参照完整性用户定义的完整性3.关系模型的完整性约束实体完整性4.关系数据模型的存储结构表以文件形式存储有的DBMS一个表对应一个操作系统文件有的DBMS自己设计文件结构4.关系数据模型的存储结构表以文件形式存储5.关系模型的优缺点优点建立在严格的数学概念的基础上概念单一。数据结构简单、清晰,用户易懂易用实体和各类联系都用关系来表示。对数据的操作结果也是关系。关系模型的存取路径对用户透明具有更高的数据独立性,更好的安全保密性简化了程序员的工作和数据库开发建立的工作5.关系模型的优缺点优点关系模型的优缺点(续)缺点存取路径对用户透明导致查询效率往往不如非关系数据模型为提高性能,必须对用户的查询请求进行优化增加了开发数据库管理系统的难度关系模型的优缺点(续)缺点6.典型的关系数据库系统ORACLESYBASEINFORMIXDB/2COBASEPBASEEasyBaseDM/2OpenBaseSQLServerKingBase6.典型的关系数据库系统ORACLE表1.2层次、网状、关系模型比较表比较项层次模型网状模型关系模型创始1968年IBM公司的IMS系统1969年CODASYL的DBTG报告(1971年通过)1970年E.F.Codd提出关系模型典型产品IMSIDS/Ⅱ,IMAGE/3000,IDMS等Oracle,Sybase,DB2,SQLServer等盛行时期20世纪70年代20世纪70年代到80年代中期20世纪80年代至今数据结构复杂(树形结构),要加树形限制复杂(有向图结构),结构上无需严格限制简单(二维表),无需严格限制数据联系通过指针连接记录型,联系单一通过指针连接记录型,联系多样,较复杂通过联系表(含外码),联系多样查询语言过程式,一次一记录。查询方式单一(双亲到子女)过程式,一次一记录。查询方式多样非过程式,一次一集合。查询方式多样实现难易在计算机中实现较方便在计算机中实现较困难在计算机中实现较方便数学理论基础树(研究不规范,不透彻)无向图(研究不规范,不透彻)关系理论(关系代数、关系演算),研究深入、透彻、表1.2层次、网状、关系模型比较表比较项层次模型网状模型关现实世界、信息世界、机器世界/关系数据库间术语对照表现实世界信息世界机器世界/关系数据库事物实体记录/元组(或行)若干同类事物实体集记录集(即文件)/元组集(即关系)若干特征刻画的事物实体型记录型/二维表框架(即关系模式)事物的特征属性字段(或数据项)/属性(或列)事物之间的关联实体型(或实体)之间的联系记录型之间的联系/联系表(外码)事物某特征的所有可能值域字段类型/域事物某特征的一个具体值一个属性值字段值/分量可区分同类事物的特征或若干特征码关键字段/关系键(或主码)现实世界、信息世界、机器世界/关系数据库间术语对照表现实世界第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述数据库系统的体系结构是数据库系统的一个总的框架。尽管实际的数据库系统的软件产品多种多样(支持不同的数据模型、使用不同的数据库语言、建立在不同的操作系统之上、数据的存储结构也各不相同),但绝大多数的数据库系统在总的体系结构上都具有三级模型结构的结构特征,正因为此,数据库系统才具有数据独立性的重要特征。1.3数据库系统结构数据库系统的体系结构是数据库系统的一个总的框从数据管理的角度来看,与数据库打交道的有三类人员:用户、应用程序员和系统程序员。由于他们对数据库的认识、理解和接触范围各不相同,从而形成了各自的数据库视图。
1.3数据库系统结构从数据管理的角度来看,与数据库打交道的有三类人员:1.3数所谓视图是指观察、认识和理解数据的范围、角度和方法。根据各类人员与数据库的不同关系,可把视图分为三种:即对应于用户的外部视图、对应于应用程序员的概念视图和对应于系统程序员的内部视图。由此形成数据库系统的三级模式结构:外模式、概念模式和内模式。1.3数据库系统结构所谓视图是指观察、认识和理解数据的范围、角度和方法。1.31.3.1数据库系统模式的概念从数据库管理系统角度看数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3.1数据库系统模式的概念从数据库管理系统角度看数据库系统模式的概念“型”和“值”的概念型(Type)对某一类数据的结构和属性的说明值(Value)是型的一个具体赋值例如:学生记录记录型:(学号,姓名,性别,系别,年龄,籍贯)该记录型的一个记录值:(900201,李明,男,计算机,22,江苏)数据库系统模式的概念“型”和“值”的概念数据库系统模式的概念(续)模式(Schema)数据库逻辑结构和特征的描述是型的描述反映的是数据的结构及其联系模式是相对稳定的模式的一个实例(Instance)模式的一个具体值反映数据库某一时刻的状态同一个模式可以有很多实例实例随数据库中的数据的更新而变动数据库系统模式的概念(续)模式(Schema)1.3.2数据库系统的模式结构数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3.2数据库系统的模式结构数据库系统模式的概念用户A1用户A2用户B1用户B2…………外视图A……外模式A外视图B外模式B概念模式概念视图存储结构定义(内模式)存储数据库(内视图)……DBMS由数据库管理员建立和维护的模式……1.3.2数据库系统的模式结构用户A1用户A2用户B1用户B2…………外视图A……外模式A数据库系统的三级模式结构数据库系统的三级模式结构1.模式(Schema)模式(也称逻辑模式)数据库中全体数据的逻辑结构和特征的描述所有用户的公共数据视图,综合了所有用户的需求一个数据库只有一个模式模式的地位:是数据库系统模式结构的中间层与数据的物理存储细节和硬件环境无关与具体的应用程序、开发工具及高级程序设计语言无关模式的定义数据的逻辑结构(数据项的名字、类型、取值范围等)数据之间的联系数据有关的安全性、完整性要求1.模式(Schema)模式(也称逻辑模式)2.外模式(ExternalSchema)外模式(也称子模式或用户模式)数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述数据库用户的数据视图,是与某一应用有关的数据的逻辑表示2.外模式(ExternalSchema)外模式(也称子外模式(续)外模式的地位:介于模式与应用之间模式与外模式的关系:一对多外模式通常是模式的子集一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同外模式与应用的关系:一对多同一外模式也可以为某一用户的多个应用系统所使用,但一个应用程序只能使用一个外模式。外模式(续)外模式的地位:介于模式与应用之间外模式(续)外模式的用途保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据外模式(续)外模式的用途3.内模式(InternalSchema)内模式(也称存储模式)是数据物理结构和存储方式的描述是数据在数据库内部的表示方式记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规定一个数据库只有一个内模式3.内模式(InternalSchema)内模式(也称存储1.3.3数据库的二级映象功能与数据独立性数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3.3数据库的二级映象功能与数据独立性数据库系统模式的概三级模式与二级映象三级模式是对数据的三个抽象级别二级映象在DBMS内部实现这三个抽象层次的联系和转换为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映象:外模式/模式映象,模式/内模式映象。
这两层映象保证了数据库系统的数据能够具有较高的逻辑独立性和物理独立性。三级模式与二级映象三级模式是对数据的三个抽象级别数据库系统的三级模式结构数据库系统的三级模式结构1.外模式/模式映象定义外模式与模式之间的对应关系每一个外模式都对应一个外模式/模式映象映象定义通常包含在各自外模式的描述中1.外模式/模式映象外模式/模式映象的用途保证数据的逻辑独立性当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。外模式/模式映象的用途保证数据的逻辑独立性2.模式/内模式映象模式/内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的数据库中模式/内模式映象是唯一的该映象定义通常包含在模式描述中2.模式/内模式映象模式/内模式映象的用途保证数据的物理独立性当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。模式/内模式映象的用途保证数据的物理独立性1.3数据库系统的体系结构数据库系统模式的概念数据库系统的三级模式结构数据库的二级映象功能与数据独立性小结1.3数据库系统的体系结构数据库系统模式的概念数据库系统三级模式结构概念比较比较
外模式
模式
内模式
定义
也称子模式或用户模式,还称用户级模式
也称逻辑模式,还称概念级模式
也称存储模式,还称物理级模式
是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述
是数据库中全体数据的逻辑结构和特征的描述,它包括:数据的逻辑结构、数据之间的联系和与数据有关的安全性、完整性要求。
它是数据物理结构和存储方式的描述。特点1
是各个具体用户所看到的数据视图,是用户与DB的接口。
是所有用户的公共数据视图。一般只有DBA能看到全部
数据在数据库内部的表示方式。特点2
可以有多个外模式
只有一个模式
只有一个内模式数据库系统三级模式结构概念比较比较外模式模式内模式也数据库系统三级模式结构概念比较(续)比较
外模式
模式
内模式
特点3
针对不同用户,有不同的外模式描述。每个用户只能看见和访问所对应的外模式中的数据,数据库中其余数据是不可见的。所以外模式是保证数据库安全性的一个有力措施。
数据库模式以某一种数据模型(层状、网状、关系)为基础,统一综合地考虑所有用户的需求,并将这些需求有机地结合成一个逻辑整体。以前由DBA定义,现基本由DBMS定义。
特点4
面向应用程序或最终用户。由DBA定义与管理。
由DBA定义或由DBMS预先设置。
DDL
DBMS提供三种模式的描述语言(DDL)来严格定义三种模式。如:子模式DDL、模式DDL和内模式DDL。子模式DDL和用户选用的程序设计语言具有相容的语法。如:Cobol子模式DDL。关系数据库三种模式的描述语言统一于SQL语言中。
数据库系统三级模式结构概念比较(续)比较外模式模式内模小结模式是数据库的中心与关键独立于数据库的其它层次设计数据库模式结构时应首先确定数据库的逻辑模式小结模式小结(续)内模式依赖于全局逻辑结构,但独立于数据库的用户视图即外模式,也独立于具体的存储设备。它将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以达到较好的时间与空间效率。小结(续)内模式小结(续)外模式面向具体的应用程序,定义在逻辑模式之上,但独立于存储模式和存储设备设计外模式时应充分考虑到应用的扩充性。当应用需求发生较大变化,相应外模式不能满足其视图要求时,该外模式就得做相应改动小结(续)外模式小结(续)应用程序在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据库的模式和存储结构独立。不同的应用程序有时可以共用同一个外模式。小结(续)应用程序小结(续)二级映象保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改。数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。小结(续)二级映象第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述1.4数据库系统的组成数据库数据库管理系统(及其开发工具)应用系统数据库管理员(用户)1.4数据库系统的组成数据库一、硬件平台及数据库数据库系统对硬件资源的要求(1)足够大的内存操作系统DBMS的核心模块数据缓冲区应用程序一、硬件平台及数据库数据库系统对硬件资源的要求数据库系统对硬件资源的要求(2)足够大的外存磁盘操作系统DBMS应用程序数据库及其备份光盘、磁带、软盘数据备份(3)较高的通道能力,提高数据传送率数据库系统对硬件资源的要求(2)足够大的外存二、软件DBMS操作系统与数据库接口的高级语言及其编译系统以DBMS为核心的应用开发工具为特定应用环境开发的数据库应用系统二、软件DBMS三、人员数据库管理员系统分析员数据库设计人员应用程序员(最终用户)三、人员数据库管理员1.数据库管理员(DBA)决定数据库中的信息内容和结构决定数据库的存储结构和存取策略定义数据的安全性要求和完整性约束条件1.数据库管理员(DBA)决定数据库中的信息内容和结构数据库管理员(续)监控数据库的使用和运行周期性转储数据库数据文件日志文件系统故障恢复介质故障恢复监视审计文件数据库管理员(续)监控数据库的使用和运行数据库管理员(续)数据库的改进和重组性能监控和调优数据重组:数据库运行一段时间后,由于记录不断增、删改,会使数据库的物理存储情况变坏,降低了数据的存去效率,数据库性能下降,需要由DBA按原设计要求重新安排存储位置,回收垃圾,减少指针链等,提高系统性能。数据库重构由于数据库应用环境发生变化,使原有的数据库设计不能满足新的要求,需要调整数据库的模式和内模式。数据库管理员(续)数据库的改进和重组2.系统分析员负责应用系统的需求分析和规范说明与用户及DBA协商,确定系统的硬软件配置参与数据库系统的概要设计2.系统分析员负责应用系统的需求分析和规范说明3.系统分析员和数据库设计人员参加用户需求调查和系统分析确定数据库中的数据设计数据库各级模式3.系统分析员和数据库设计人员参加用户需求调查和系统分析4.应用程序员设计和编写应用系统的程序模块进行调试和安装4.应用程序员设计和编写应用系统的程序模块5.用户偶然用户企业或组织机构的高中级管理人员简单用户银行的职员、机票预定人员、旅馆总台服务员5.用户偶然用户用户(续)复杂用户工程师、科学家、经济学家、科技工作者等直接使用数据库语言访问数据库,甚至能够基于数据库管理系统的API编制自己的应用程序用户(续)复杂用户第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4
数据库系统的组成1.5数据库技术的研究领域1.6小结第一章绪论1.1数据库系统概述1.5数据库技术的研究领域数据库管理系统软件的研制数据库设计数据库理论1.5数据库技术的研究领域数据库管理系统软件的研制数据库管理系统软件的研制DBMS核心一组相互联系的软件系统工具软件中间件数据库管理系统软件的研制DBMS核心数据库设计数据库设计方法设计工具设计理论数据模型和数据建模数据库设计数据库设计方法数据库理论关系的规范化理论关系数据理论数据库理论关系的规范化理论第一章绪论1.1数据库系统概述1.2数据模型1.3数据库系统结构1.4
数据库系统的组成1.5数据库技术的研究领域小结第一章绪论1.1数据库系统概述小结数据库系统概述数据库的基本概念数据管理的发展过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年张紧装置项目资金申请报告代可行性研究报告
- 2025年华北理工大学轻工学院单招职业倾向性测试题库带答案
- 数学-广州市白云区2025年高三下学期期初综合训练试题+答案
- 2025年贵州工程职业学院单招职业适应性测试题库附答案
- 2025年度合伙人拆伙协议书:涉及债务分担及清偿的拆伙协议
- 2025年度手车过户车辆交易车辆交易税费减免协议
- 2025年度房屋赠与与绿色出行合同样本
- 2025年度道路救援拖车服务与救援人员培训合同范本
- 2025年度土地使用权转让合同协议书
- 二零二五年度财务数据录入人员劳务合同
- 国企关于违反“三重一大”决策制度责任追究办法
- CRF病例报告表模板
- 九上下册物理人教版九年级物理全册第十九章《生活用电》第3节《安全用电》课件(42张)公开课教案
- 2024年计算机二级WPS考试题库380题(含答案)
- 2024年人教版九年级英语单词默写单(微调版)
- 2024至2030年中国海洋化工产业发展动态及投资前景分析报告
- 22G101三维彩色立体图集
- 【绝味鸭脖公司的存货管理问题及完善对策8500字】
- 山东省技能大赛青岛选拔赛-世赛选拔项目52样题(平面设计技术)
- 防排烟规范培训
- 2024年江苏农牧科技职业学院单招职业适应性测试题库及答案1套
评论
0/150
提交评论