书签 分享 收藏 举报 版权申诉 / 90
上传文档赚钱

类型数据库技术第2章-的关系模型-课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4092710
  • 上传时间:2022-11-10
  • 格式:PPT
  • 页数:90
  • 大小:930.21KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《数据库技术第2章-的关系模型-课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据库技术 关系 模型 课件
    资源描述:

    1、u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4 关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 关系模型本章主要内容本章主要内容11/10/20221 关系模型是目前最流行并且是最重要的数据模型。自从EFCodd于1970年提出关系模型以来,已占有了相当重要的地位,相对于以前的层次模型和网状模型,关系数据模型在许多方面对以前的数据模型进行了改进,这些改进简化了数据管理、数据检索等工作。11/10/20222u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.

    2、4关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 数据模型11/10/20223关系模型的组成:数据结构+关系操作+完整性约束表结构 8个运算 三类完整性关系代数语言关系演算语言SQL语言实体完整性参照完整性自定义完整性数据库技术数据库技术Concept and Technology of DataBase 11/10/20224 关系模型是目前广泛应用的一种数据模型。关系模型中涉及到的基本元素包括关系、关系操作以及对关系的完整性约束条件。1.关系 关系是关系模型的数据结构。在关系模型中,数据用关系来表示,数据之间的联系仍用关系

    3、来表示,对数据的操作就是对关系的运算,而且关系运算的结果还是关系。通俗地讲,关系就是一张二维表,如下所示:11/10/20225编号姓名性别年龄职称部门200305001李男47教授计通200305002张男43副教授计通200305003李女35副教授计通200305004王女35讲师计通表中的每一行称为元组,指关系表所表示对象的实例表中的每一列称为属性。列标题是属性名该列属性的值,称为分量11/10/20226关系的形式化定义关系的形式化定义(从集合论的角度)(从集合论的角度)(1)域 域是一组具有相同数据类型的值的集合。(2)笛卡尔积 给定一组域 ,这些域中可以有相同的。的笛卡尔积为:其

    4、中每一个元素 叫作一个n元组或简称元组。元素中每一个值 叫作一个分量。若 为有限集,其基数为 ,则nDDD,.,21nDDD,.,21,.,2,1,|),.,(.2121niDddddDDDiinn),.,(21ndddid),.,2,1(niDi),.,2,1(niminDDD.2111/10/20227的基数M为:inimM1 例如给出3个域:1D=导师集合=张清玫,刘逸=专业集合=计算机专业,信息专业=研究生集合=李勇,刘晨2D3D11/10/20228则 的笛卡尔积为:=(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),(张清玫,信息专业,李勇),(张清玫,信息专业,刘晨),

    5、(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),(刘逸,信息专业,李勇),(刘逸,信息专业,刘晨)由上述笛卡尔积表示的二维表为:321,DDD321DDD11/10/20229 导 师 专业 研究生 张清玫 计算机专业 李勇 张清玫 计算机专业 刘晨 张清玫 信息专业 李勇 张清玫 信息专业 刘晨 刘逸 计算机专业 李勇 刘逸 计算机专业 刘晨 刘逸 信息专业 李勇 刘逸 信息专业 刘晨11/10/202210()关系 的子集称作域上的关系,表示为:。这里R表示关系的名字,n是关系的目或度。当n=1时,称该关系为单元关系。当n=2时,称该关系为二元关系。nDDD.21nDDD,.,21

    6、),.,(21nDDDR11/10/202211 关系可分为以下三种类型:基本表:实际存在的表,它是实际存储数据的逻辑表示。查询表:查询结果对应的表。视图表:由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。11/10/202212关系模式、关系实例和关系数据库 关系模式是对关系表中每个列的描述。关系模式需要给出关系名、每个属性的名称、属性的域及属性和域之间的映射关系。教师关系表对应的关系模式可以描述为:教师(编号,姓名,性别,年龄,职称,部门)关系实例是关系模式在某一个时刻的状态和内容。关系数据库是对应于一个关系模型的某应用领域全部关系的集合。它是基于关系模型的数据库。11/10/

    7、202213码 码是关系模型完整性约束的一个体现。在一个关系中,若某一属性集合的值可唯一地标识每一个元组,即其值对不同的元组是不同的,这样的最小属性集合称为候选码(Candidate key),简称为码(Key)。若一个关系中有多个候选码,则选定其中一个作为主码(Primary key)。在定义关系模式时,为了体现出关系的主码,通常在选为主码的属性下面加下划线。例如教师关系:教师(编号,姓名,性别,年龄,职称,部门)11/10/2022142.关系操作关系数据模型定义了关系上的一组操作,常用的关系操作包括查询(Query)操作和插入(Insert)、删除(Delete)、修改(Update)操

    8、作。关系的查询表达能力很强,是关系操作中最主要的部分。查询操作可以分为:选择、投影、连接、除、并、差、交、笛卡尔积等。关系操作的特点是集合操作方式,即操作的对象和结果都是集合。11/10/2022153.关系的完整性规则 关系模型的完整性规则是对关系的某种约束条件,目的在于控制并确保数据内容的有效性和一致性。关系模型的完整性规则包括实体完整性、参照完整性和用户自定义的完整性。实体完整性规则 在关系表中,所有元组主码的值都不能为空。下面的教师表违背了实体完整性规则 11/10/202216编号姓名性别年龄职称部门200305001李男47教授计通张男43副教授计通200305003李女35副教授

    9、计通王女35讲师计通参照完整性 在关系模型中,采用给关系定义外键的形式进行关系间属性的引用,从而实现参照完整性。外键,也称为外码。它是关系的一组属性,但不是主码属性,它的取值与另外一个关系中主码属性的取值相匹配,也就是说,属性的数目以及数据类型都要相同。11/10/202217例2.1教师和研究生可以用下面的关系来表示,其中主码用下划线标识:教师(编号,姓名,性别,年龄,职称,部门)研究生(学号,姓名,导师编号,导师姓名,专业)教 师 信 息 表PK 编号 姓名 性别 年龄 职称 部门研究生信息表PK 学号 姓名 导师编号 导师姓名 专业外键11/10/202218参照完整性规则 关系中每个元

    10、组在外键上的取值,或者为空值,或者等于与该关系相匹配的关系的主码值。用户自定义的完整性实体完整性和参照完整性是关系模型必须满足的完整性约束条件。除此之外,还需要有能反映某一具体应用所涉及的数据必须满足的语义要求的约束条件。这种约束条件,称为用户自定义的完整性。例如:人的身高不能超过3米,学生成绩应该大于等于零,职工的工龄应该小于年龄。11/10/202219u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 数据模型11/10/202220数据库原

    11、理与应用数据库原理与应用Principle and Application of DataBase 关系数据语言(也称数据库操作语言)是数据库管理系统提供的用户接口,是用户用来操作数据库的工具,通常包括查询语句和非查询语句。关系数据语言大体分为三类:关系数据语言关系代数ISBL关系演算语言元组关系演算语言ALPHA域关系演算语言QBE具有关系代数和关系演算双重特点的语言SQL11/10/202221说明:(1)关系代数语言:由一个或多个关系表行列的数学操作组成。在一系列操作中,各操作都生成一个结果关系表。(2)关系演算语言:将数理逻辑的谓词演算应用到关系运算中。关系演算语言又可分为元组关系演算

    12、语言和域关系演算语言。元组关系演算语言:谓词变元的基本对象是元组变量。域关系演算语言:谓词变元的基本对象是元组变量的分量即域变量。11/10/202222(3)结构化查询语言(SQL):SQL不仅具有丰富的查询功能,而且具有数据定义和数据控制功能,是集数据定义语言(DDL)、数据操纵语言(DML)和数据控制语言(DCL)于一体的关系数据语言。11/10/2022231.关系代数的基本操作 关系代数是与关系模型相关的两种形式化查询语言之一。它包括一个运算集合,这些运算以一个或两个关系为输入,产生一个新的关系作为结果。关系代数的基本运算有:选择、投影、并、差、笛卡儿积。在基本运算以外,还有一些其他

    13、运算,包括交、连接和除。这些运算可以由关系代数的基本运算定义。11/10/202224关系运算的一些记号:1设关系模式为。它的一个关系设为,表示 是 的一个元组。则表示元组中相应属性的一个分量。2若,其中是中的一部分,则称为属性列或属性组。表示元组在属性列上诸分量的集合。则表示 中去掉 后剩余的属性组。3为n目关系,为m目关系。称为元组),.,(21nAAARRt RtRiAtiAt,.,21ikiiAAAAikiiAAA,.,21nAAA,.,21A),.,(21ikiiAtAtAtAttAA,.,21nAAA,.,21ikiiAAARSsrsrttStRt,11/10/202225的连接。

    14、它是一个n+m列的元组,前n个分量为中的一个n元组,后m个分量为中的一个m元组。4给定一个关系,和为属性列。当时,在中的象集定义为:它表示中属性组上值为 的诸元组在上分量的集合。RS),(ZXRXZxXtR,|xXtRtZtZxRXZx11/10/202226ABCa1b155a2b245a4b235ABCa1b255a2b245a3b135a4b235ADa1101a2101a2102a3102假设、和是三个关系 1R2R3R1R2R3R11/10/202227关系代数的基本操作(1)选择(Selection)选择运算是从输入关系中选择满足给定条件的元组,记作:其中表示选择条件,它是一个逻辑

    15、表达式。通常,允许在逻辑表达式中进行比较,使用=,。另外,还可以使用逻辑连接词与(),或()和非()把多个表达式连接合并成为一个较大的表达式。R)(|)(真tFRttRFF11/10/202228经过运算后的结果为:(2)投影(Projection)关系上的投影是从中选择出若干属性列组成新的关系。记作:例如:从关系中选择属性B的值等于b2的所有元组,可以表示为:结果为:1R)(1B2RbABCa2b245a4b235RR|)(RtAtRA)(1,RBAABa1b1a2b2a4b2(3)并(Union)并运算是传统的集合运算。它的运算结果包含了参加运算的两个关系中的所有元组。11/10/2022

    16、29的结果为:关系和关系的并记作:两个关系要能够进行并运算,必须是相容关系,即必须满足以下两个条件:(1)两个关系的属性数必须相同(2)从左向右,对应的属性要有相同的取值范围。RS|StRttSR21RR ABCa1b155a2b245a4b235a1b255a3b13511/10/202230(4)差(Difference)差运算也是传统的集合运算。它的结果包括出现在一个关系中而不出现在另一个关系中的元组。关系和关系的差记作:RS|StRttSR的结果为:21RR ABCa1b155(5)笛卡儿积(Cartesian Product)笛卡儿积运算可以将任意两个关系的信息组合在一起。两个分别为

    17、n目和m目的关系和的笛卡尔积是一个(n+m)列的元组的集合。SR11/10/202231元组的前n列是关系的一个元组,后m列是关系的一个元组。假如关系中有个r元组,关系中有s个元组。那么关系和关系的笛卡儿积中将有(r*s)个元组。关系和关系的笛卡儿积记作:RSRSRSRS|StRtttSRsrsr21RR 的结果为:11/10/202232R1.AR1.BR1.CR2.AR2.BR2.Ca1b155a1b255a1b155a2b245a1b155a3b135a1b155a4b235a2b245a1b255a2b245a2b245a2b245a3b135a2b245a4b235a4b235a1b

    18、255a4b235a2b245a4b235a3b135a4b235a4b23511/10/202233的结果为:2.关系代数的其他操作(1)交(Intersection)交运算也是传统的集合运算。它的运算结果包含了同时在两个关系中出现的所有元组。关系和关系的交记作:RS|StRttSR21RR ABCa2b245a4b23511/10/202234(2)连接(Join)连接运算在关系代数中是最有用的运算之一,最常用的方式是合并两个或者多个关系的信息。连接运算是从两个关系的笛卡儿积中选取满足一定条件的元组。记作:其中,A和B是关系和上度数相等并且可比的属性组。是比较运算符。连接运算从和的笛卡儿积

    19、中选取关系在A属性组上的值与关系在B属性组上的值满足比较关系的元组。|S B ABtAtStRtttRsrsrsrRSRRSS11/10/202235的结果为:121.2 1R CRCRRR1.A R1.B R1.C R2.A R2.B R2.Ca2b245a1b255a4b235a1b255a4b235a2b245连接运算有两种最重要且应用最广泛的连接:等值连接和自然连接。等值连接是连接运算的一种特殊情况,一般指连接条件是相等表达式,即为“=”的连接运算。11/10/202236的结果为:等值连接要求连接的两个关系中对应属性相等。记作:|S B ABtAtStRtttRsrsrsr121.2

    20、 1R CRCRRR1.AR1.BR1.CR2.AR2.BR2.Ca1b155a1b255a2b245a2b245a4b235a3b135a4b235a4b23511/10/202237自然连接是一种特殊的等值连接。它要求两个关系中所有同名属性都相等,并且在结果中必须把重复的属性列删除。一般的连接操作是从行的角度进行运算。但自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。假如关系和关系具有相同的属性组A,则自然连接记作:RS|AtAtStRtttSRsrsrsr11/10/2022383 1R R的结果为:ABCDa1b155101a2b245101a2b24510211/10/2

    21、02239(3)除除运算适合于包含了“对所有的”的查询。假如两个关系和,其中为属性组,中的和中的可以有不同的属性名,但必须出自相同的域集。除运算定义为如下的所有属性组列上值的集合:对于中的属性列上的每个值,在中都有相同的与之对应。另一种理解除操作的方式为:对于中的每个 属性组列上的值,考虑具有该值的所有 属性列上的值的集合。如果该集合包含了 中的所有 属性组列上的值,那么这个 的值就包含在 的结果中。关系和关系的除运算记作:),(YXR),(ZYSZYX,RYYSSR XxSYRxRXxYSYxSR 11/10/202240)(|xyrrYSRtXtSR其中 为 在 中的象集,。xYxRXtx

    22、r设关系 、和 如下所示,则 、的结果图为:R1S2SABa1b1a1b2a1b3a2b1a2b2a3b2a3b3Bb3Bb1b2b3R1S2S1SR 2SR Aa1a3Aa11SR2SR11/10/202241关系代数运算举例 设有一个学生-课程数据库,包括学生关系Student,课程关系Course和选修关系SC。其关系模式分别为:Student(Sno,Sname,Ssex,Sage,Sdept);Course(Cno,Cname,Cpno,Ccredit)SC(Sno,Cno,Grade)11/10/202242例1:查询信息系(IS)全体学生;例2:查询年龄小于20岁的学生;例3:查

    23、询学生的姓名和所在系;例4:查询学生关系中都有哪些系;例5:查询学生95001的所有信息;例6:查询学生95001的姓名和所在系;例7:查询选修了1号课程的学生的学号;例8:查询选修了1号课程的学生的姓名;11/10/202243例9:查询至少选修了1号课程和3号课程的学生的学号;例10:查询至少选修了一门其直接先修课为5号课程的学生的学号;例11:查询没有选修1号课程的学生姓名;例12:查询选修了全部课程的学生的学号和姓名;例13:查询最少选修了学生95002所选课程的学生学号;11/10/2022443.扩展的关系代数运算(1)广义投影广义投影运算通过允许在投影列表中使用算术函数来对投影进

    24、行扩展。广义投影运算形式为:例2.10将编号为200305003的教师的年龄改为36岁 (2)赋值运算通过赋值给临时关系变量的方法把关系代数表达式分成几个部分写会很简单。赋值运算用表示,与程序语言中的赋值相类似。)(,.,21EnFFF)Teacher(200305003Tno36TageTname,Tno,11/10/202245例2.11 删除编号为200305003的教师的相关信息(Teacher)(TeacherTeacher200305003Tno(TP)(TPTP200305003Tno(3)外连接外连接运算是连接运算的扩展,可以处理缺失的信息。外连接运算有三种:左外连接、右外连接

    25、和全外连接。左外连接取出左侧关系中所有与右侧关系的任一元组都不匹配的元组,用空值填充所有来自右侧关系的属性,再把产生的元组加到自然连接的结果上。11/10/202246右外连接与左外连接相对称:用空值填充来自左侧关系的所有与右侧关系的任一元组都不匹配的元组,将结果加到自然连接的结果上。全外连接完成左外连接和右外连接的操作,既填充左侧关系中与右侧关系的任一元组都不匹配的元组,又填充右侧关系中与左侧关系的任一元组都不匹配的元组,并把结果加到自然连接的结果上。下图表示的分别是关系 和关系(第23页)的左外连接、右外连接和全连接。1R3R11/10/202247ABCDa1b155101a2b2451

    26、01a2b245102a4b235nullABCDa1b155101a2b245101a2b245102a3null null 102左外连接右外连接11/10/202248ABCDa1b155101a2b245101a2b245102a4b235nulla3nullnull102全连接11/10/202249(4)聚集关系的聚集运算指的是根据关系中的一组值,经统计、计算得到一个值作为结果,比较常用的聚集函数为求最大值max、最小值min、平均值avg、总和值sum和计数值count等,使用时聚集函数前标以手写体符号“G”。例2.12 求计通学院教师的平均年龄 )Teacher(Tage)(C

    27、CTdept avgG11/10/202250u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 数据模型11/10/202251关系演算是以数理逻辑中的谓词演算为基础的。与关系代数相比较,关系演算是非过程化的。也就是说,当书写关系代数表达式时,提供了产生查询结果的过程序列。与之相反,关系演算只需描述结果的信息,而不给出获得信息的具体过程。依据关系演算中变量的不同,关系演算可分为元组关系演算和域关系演算。11/10/2022521.元组关系演算 元

    28、组关系演算以元组为变量。元组关系演算表达式的一般形式为:其中:为元组变量,是以元组变量为基础的公式。该表达式的含义是使为真的元组的集合。用关系演算表达式来表示的五种基本运算:(1)并(2)差(3)笛卡儿积 )(|ttt)(tt)(t)()(|tStRtSR)()(|tStRtSR).1 1.22 1 1)()()()(|)()()(nvnmtvmtmumtututvSuRvutSRnmnm11/10/202253(4)选择(5)投影 例2.13 查询计通学院的所有教师 例2.14 查询年龄小于20岁的学生 例2.15 查询教师姓名和所在部门)(|)(FtRtRF).1)()(|)(1)(,.,

    29、2,1kkikiiiuktiutuRutR CC t6 Teacher(t)|tCCS 20 t4 Teacher(t)|t20S u6)t2 2 t1 Teacher(u)(|t26,2uuS11/10/2022542.域关系演算域关系演算与元组关系演算相似。元组关系演算中表达式使用的是元组变量,而域关系演算表达式中使用的是域变量(即以属性列为变量),域变量的变化范围是某个属性的值域,元组变量的变化范围是一个关系。域关系演算表达式的一般形式是:),.,(|,.,2121kkxxxxxx11/10/202255一个很有特色的域关系演算语言是QBE。QBE(Query By Example)是在

    30、70年代由IBM公司的M.M.Zloof提出的。目前有不少DBMS支持这种语言。比如DB2,Paradox,dBASE等。这是一种以域关系演算为基础的说明条件查询语言。QBE最大的特点是采用屏幕编辑的表格对数据库进行操作,不仅查询结果用表格的形式显示,而且用户的查询要求也是在屏幕上用填写表格的方式给出,因此非常直观,易学易用。11/10/202256下面以教师-项目关系数据库为例简单地介绍可视化查询语言QBE。(1)数据查询QBE为用户提供了填写查询条件或显示结果的表格,形式为:关系名属性列1属性列n填写对元组的操作符查询时填写应满足的查询条件1,查询后显示结果元组查询时填写应满足的查询条件n

    31、,查询后显示结果元组11/10/202257要完成查询,用户首先提出查询要求,屏幕上就会显示一个空白表格。用户在表格的第一列输入关系名,这时系统就会显示该关系的属性名,然后用户就可在其上构造查询要求。这里需要注意的是构造查询时,在结果输出列,需要填写示例元素。如下所示:Teacher Tno TnameTsexTageTpositionTdeptP.T11/10/202258 例2.16 查询计通学院全体教师的姓名 例2.17 查询职称是教授并且年龄小于40岁的教师姓名Teacher Tno TnameTsexTage TpositionTdeptP.李CCTeacherTnoTnameTse

    32、xTageTposition TdeptP.李40professor11/10/202259例2.18 查询职称为教授或者性别为女的教师编号例2.19 查询在项目中排名第一的教师姓名TeacherTnoTnameTsexTageTpositionTdeptP.200305001P.200305002femaleprofessorTeacherTnoTnameTsexTageTpositionTdept200305001P.李TPPRnoTnoOrder200305001 111/10/202260(2)数据更新QBE提供三个更新操作符:插入(I.)、删除(D.)和修改(U.)。更新操作首先要根

    33、据输人的条件查找出操作对象,这个过程和查询的实现相似,只是在每找到和条件一致的元组时,完成I.、D.和U.这些修改数据库的命令。例2.20把200305003教师的职称改为教授执行这个修改,可以有两种方法,一种是把修改操作符U.放在值上,另外一种是放在关系上。11/10/202261TeacherTnoTnameTsexTageTpositionTdept200305003U.professorTeacherTnoTnameTsexTageTpositionTdeptU.200305003P.李professor例2.21 将计通学院所有教师的年龄都增加一岁TeacherTnoTnameTse

    34、x TageTpositionTdeptU.2003050012003050014747+1CC11/10/202262例2.22 把计通学院女教师200305005,姓名赵,年龄38,职称教授存入数据库中。例2.23删除教师200305004。TeacherTnoTnameTsexTageTpositionTdeptI.200305005赵female38professorCCTeacherTnoTnameTsexTageTpositionTdeptD.20030500411/10/202263u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4 关系系统的

    35、十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 数据模型11/10/202264关系数据库系统简称为关系系统。一个系统可定义为关系系统,当且仅当它:(1)支持关系数据库(关系数据结构)(2)支持选择、投影和(自然)连接运算。对这些运算不必要求定义任何物理存取路径。11/10/202265关系系统应该完全地支持关系模型的所有特征。关系模型的奠基人E.F.Codd具体给出了关系系统应该遵循的12条基本准则。从实际意义上看,这12条准则可以作为评价关系型产品的标准。从理论意义上看,它是对关系数据模型的具体而又深入的论述,是从理论和实际紧密结合的

    36、高度对关系型数据库管理系统的评述。11/10/202266准则准则0 一个关系型的DBMS必须能完全通过它的关系能力来管理数据库。准则准则1 信息准则。关系型DBMS的所有信息都应在逻辑一级上用一种方法即表中的值显式地表示。准则准则2 保证访问准则。依靠表名、主码和列名的组合,保证能以逻辑方式访问关系数据库中的每个数据项(分量值)准则准则3 空值的系统化处理。关系型的DBMS应支持空值的概念,并用系统化的方式处理空值。11/10/202267准则准则4 基于关系模型的动态的联机数据字典。数据库的描述在逻辑级上应该和普通数据采用同样的表示方式,使得授权用户可以使用查询一般数据所用的关系语言来查询

    37、数据库的描述信息。准则准则5 统一的数据子语言准则。准则准则6 视图更新准则。所有理论上可更新的视图也应该允许有系统更新。准则准则7 高级的插入、修改和删除操作。11/10/202268准则准则8 8 数据物理独立性。准则准则9 9 数据逻辑独立性。准则准则1010 数据完整性的独立性。准则准则1111 分布独立性。准则准则12 12 无破坏准则。11/10/202269u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4 关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 数据模型11/10/20

    38、2270数据库管理系统(DBMS)是指数据库系统中对数据进行管理的软件系统,它是数据库系统的核心组成部分。对数据库的一切操作,包括定义、查询、更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,因此可以把DBMS看成是某种数据模型在计算机系统上的具体实现。1.数据库管理系统的结构 下面给出了基于关系数据模型的一个典型的DBMS的体系结构 11/10/202271索引文件系统目录数据文件Web表格应用前端SQL接口初级用户高级用户、应用程序员、数据库管理员计划执行器分析器操作求解器优化器事务管理器锁管理器文件和存取方法缓冲区管理器磁盘空间管理器恢复管理器表示相互作用查询求解引擎

    39、DBMSSQL表示命令流数据库表示引用关系11/10/202272 2.商用关系数据库管理系统(1)OracleOracle 是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器体系结构的数据库之一,也是目前世界上最流行的大型关系数据库管理系统。具有移植性好,使用方便,性能强大等特点,适合于各类大、中、小、微机和专用服务器环境。11/10/202273(2)SQL Server SQL Server是Microsoft公司推出的适用于大型网络环境的数据库产品,一经推出,就得到了广大用户的积极响应并迅速占领了

    40、NT环境下的数据库领域,成为数据库市场上一个重要产品。Microsoft SQL Server 2000是一种典型的具有客户/服务器体系结构的关系数据库管理系统,它使用11/10/202274Transact-SQL语句在服务器和客户机之间传送请求和回应,具有可靠性、可伸缩性、可管理性、可用性等特点。它支持大规模联机事务处理、数据仓库、数据挖掘和电子商务等应用。SOL Server 2000的出现极大地推动了数据库的应用和普及,无论在功能上,还是在安全性、可维护性和易操作性上都较以前版本有了很大提高。11/10/202275(3)DB2DB2是IBM公司开发的关系数据库管理系统,它有多种不同的

    41、版本,如:DB2工作组版(DB2 Workgroup Edition)、DB2企业版(DB2 Enterprise Edition)、DB2个人版(DB2 Personal Edition)和DB2企业扩展版(DB2 Enterprise-Exended Edition)等,这些产品基本的数据管理功能是一样的,区别在于支持远程客户能力和分布式处理能力。11/10/202276个人版适用于单机使用,即服务器只能由本地应用程序访问。工作组版和企业版提供了本地和远程客户访问DB2的功能(当然远程客户要安装相应客户应用程序开发部件),企业版包括工作组版中的所有部件外再增加对主机连接的支持。企业扩展版允

    42、许将一个大的数据库分布到同一类型的多个不同计算机上,这种分布式功能尤其适用于大型数据库的处理。11/10/202277DB2可运行在OS/2、Windows NT、UNIX操作系统上,通常将运行在这些平台上的DB2产品统称为DB2通用数据库,这主要是强调这些产品运行环境类似,并共享相同的源代码。DB2通用数据库主要组件包括数据库引擎(Dalabase Engine)、应用程序接口和一组工具。数据库引擎提供了关系数据库管理系统的基本功能,如管理数据、控制数据的访问(包括并发控制)、保证数据完整性及数据安全。所有数据访问都通过SQL接口进行。11/10/202278 (4)InformixInfo

    43、rmix在1980年成立,目的是为Unix等开放操作系统提供专业的关系型数据库产品。公司的名称Informix便是取自Information和Unix的结合。Informix第一个真正支持SQL语言的关系数据库产品是InformixSE(StandardEngine)。InformixSE的特点是简单、轻便、适应性强。它的装机量非常之大,尤其是在当时的微机Unix环境下,成为主要的数据库产品。它也是第一个被移植到Linux上的商业数据库产品。11/10/202279自从1993年以来,为了满足越来越多的需求,Informix对其数据库产品相继进行了增强。引入Client/Server的概念,将

    44、应用对数据库的请求与数据库对请求的处理分割开来;使用多线程机制重新改写数据库核心,克服了多进程系统性能的局限性;推出了一个对象关系模型的数据库服务器通用数据选件(Universal Data Option),并进一步将Universal Data Option进行了优化,为用户自定义数据类型和操作过程提供了完整的工具环境;针对Internet应用中数据类型的多样化,采用对象技术对关系数据库体系进行了扩展,推出的数据库服务器IDS.2000。11/10/202280(5)SybaseSybase是美国Sybase公司在80年代中期推出的客户机/服务器结构的关系数据库系统,也是世界上第一个真正的基

    45、于Client/Server结构的关系数据库管理系统。Sybase主要有三个版本,一是UNIX操作系统下运行的版本,二是Novell Netware环境下运行的版本,三是windows环境下运行的版本。11/10/202281Sybase软件可划分为三个部分:一是进行数据管理与维护的联机关系数据库管理系统Sybase SQL Server;二是支持数据库应用系统的建立和开发的一组前端工具软件Sybase SQL Tools;三是可把异构环境下其他厂商的应用软件和任何类型的数据连接在一起的接口软件Open Client/Open Server。11/10/202282u 2.1 关系模型的基本概

    46、念 u 2.2 关系代数 u 2.3 关系演算 u 2.4 关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结第2章 数据模型11/10/202283本章从关系模型的概念、关系代数、关系演算、关系系统及查询优化以及关系数据库管理系统等方面详细地介绍了关系模型。关系模型是目前最流行并且是最重要的数据模型。它的数据结构是简单的二维表,具有三类完整性约束条件,可以进行一系列关系操作。其主要使用的关系语言为关系代数、元组关系演算和域关系演算。关系系统是关系数据库系统的简称。本章简单地介绍了关系系统的分类以及有E.F.Codd提出的全关系系统的12

    47、条准则。11/10/202284查询处理是关系数据库系统的核心,而查询优化技术又是查询处理的关键技术。本章讲解了查询处理的过程、等价关系代数优化规则及查询计划选择算法等。数据库管理系统是数据库系统中对数据进行管理的软件系统,它是数据库系统的核心组成部分。除介绍了数据库管理系统的功能和体系结构以外,简单地介绍了几种商用关系数据库管理系统。11/10/202285关系代数作业一、已知关系模式:学生(学号,姓名,性别,年龄,系别),选课(学号,课程号,成绩),用关系代数实现下列检索:1.查询数学系的女学生的姓名,年龄;2.查询信息系学生的学号、姓名、年龄;3.查询选修了课程号为C5课的学生的姓名、系

    48、别、成绩;4.查询没有选修课程号为C7课程的学生学号;11/10/2022865.查询选修了课程号C2并且成绩不及格的学生的学号及成绩;6.查询选修了课程号为C1及C6的学生的学号及成绩 7.查询年龄小于20岁的男学生的姓名,年龄及系别 8.查询成绩不及格的男学生的姓名、系别、成绩 9.查询计算机系成绩及格的男学生的姓名、年龄、成绩 10.查询自动化系学生的学号、姓名、成绩 11/10/202287二、设有一个SPJ数据库,包括S、P、J、SPJ四个关系模式:S(SNO,SNAME,STATUS,CITY)P(PNO,PNAME,COLOR,WEIGHT)J(JNO,JNAME,CITY)SP

    49、J(SNO,PNO,JNO,QTY)11/10/202288供应商表S由供应商代码SNO、供应商姓名SNAME、供应商状态STATUS、供应商所在城市CITY组成。零件表P由零件代码PNO、零件名PNAME、颜色COLOR、重量WETGHT组成。工程项目表J由工程项目代码JNO、工程项目名JNAME、工程项目所在城市名CITY组成。供应情况表SPJ由供应商代码SNO、零件代码PNO、工程项目代码JNO、供应数据QTY组成,表示某供应商供应某种零件给某工程项目的数量为QTY。11/10/202289请用关系代数完成以下操作:求供应工程J1零件的供应商号SNO;求供应工程J1零件P1的供应商号SNO;求供应工程J1红色零件的供应商号SNO;求没有使用天津供应商生产的红色零件的工程号JNO;求至少用了S1供应商所供应的全部零件的工程号JNO;11/10/202290

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:数据库技术第2章-的关系模型-课件.ppt
    链接地址:https://www.163wenku.com/p-4092710.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库