数据库原理及应用第2章-关系数据库(2学时)课件.ppt

上传人:飞****2 文档编号:91533188 上传时间:2023-05-27 格式:PPT 页数:68 大小:1.66MB
返回 下载 相关 举报
数据库原理及应用第2章-关系数据库(2学时)课件.ppt_第1页
第1页 / 共68页
数据库原理及应用第2章-关系数据库(2学时)课件.ppt_第2页
第2页 / 共68页
点击查看更多>>
资源描述

《数据库原理及应用第2章-关系数据库(2学时)课件.ppt》由会员分享,可在线阅读,更多相关《数据库原理及应用第2章-关系数据库(2学时)课件.ppt(68页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第2章章关系数据库关系数据库2.1关系模型关系模型2.2关系数据结构关系数据结构2.3关系的完整性关系的完整性2.4关系代数关系代数关系模型:关系模型:用二维表格表示实体集,用关键码进行用二维表格表示实体集,用关键码进行数据导航数据导航的数据模型称为关系模型。的数据模型称为关系模型。数据导航:数据导航:从已知数据查找未知数据的过程和方法。从已知数据查找未知数据的过程和方法。2.1关系模型关系模型1.常用的关系操作常用的关系操作2.关系操作的特点关系操作的特点3.关系数据语言的种类关系数据语言的种类4.关系数据语言的特点关系数据语言的特点1.常用的关系操作常用的关系操作查询:查询:选择、投影、

2、连接、除、并、交、差选择、投影、连接、除、并、交、差更新:更新:插入、删除、修改插入、删除、修改2.关系操作的特点关系操作的特点集合操作集合操作操作的对象和结果操作的对象和结果非关系数据模型:一次一记录非关系数据模型:一次一记录3.关系数据语言的种类关系数据语言的种类关系代数语言:关系代数语言:用关系的运算来表达查询要求用关系的运算来表达查询要求关系演算语言:关系演算语言:用谓词来表达查询要求用谓词来表达查询要求SQL(StructureQueryLanguage)关系数据库的标准语言关系数据库的标准语言结构化查询语言:结构化查询语言:介于关系代数和关系演算之介于关系代数和关系演算之间语言间语

3、言是一种高度非过程化的语言是一种高度非过程化的语言l存取存取路径路径的选择由的选择由DBMS的优化机制来完成的优化机制来完成l用户不需要使用循环结构就可以完成数据操作用户不需要使用循环结构就可以完成数据操作能够嵌入高级语言中使用能够嵌入高级语言中使用关关系系代代数数、元元组组关关系系演演算算和和域域关关系系演演算算三三种种语语言言在表达能力上完全等价在表达能力上完全等价4.关系数据语言的特点关系数据语言的特点2.1关系模型概述关系模型概述2.2关系数据结构关系数据结构2.3关系的完整性关系的完整性2.4关系代数关系代数一、关系一、关系2.2关系数据结构关系数据结构1.1.域(域(DomainD

4、omain)2.2.笛卡尔积(笛卡尔积(Cartesian ProductCartesian Product)3.3.关系(关系(RelationRelation)二、关系模式二、关系模式三、关系数据库三、关系数据库域(域(Domain)域域是一组具有相同数据类型的值的集合。是一组具有相同数据类型的值的集合。例例给出三个域给出三个域D1=SUPERVISOR=张清玫,刘逸张清玫,刘逸D2=SPECIALITY=计算机专业,信息专业计算机专业,信息专业 D3=POSTGRADUATE=李勇,刘晨,王敏李勇,刘晨,王敏2.笛卡尔积(笛卡尔积(CartesianProduct)(1)笛卡尔积)笛卡尔

5、积给定一组域给定一组域D1,D2,Dn,则它们的,则它们的笛卡尔积笛卡尔积为:为:D1D2Dn(d1,d2,dn)di Di,i1,2,nD1,D2,Dn域可以相同域可以相同表示所有域的所有取值的一个组合表示所有域的所有取值的一个组合不能重复不能重复无实际意义,只有它的子集才有意义无实际意义,只有它的子集才有意义例例给出三个域:给出三个域:D1=SUPERVISOR=张清玫,刘逸张清玫,刘逸D2=SPECIALITY=计算机专业,信息专业计算机专业,信息专业 D3=POSTGRADUATE=李勇,刘晨,王敏李勇,刘晨,王敏则则D1,D2,D3的笛卡尔积为:的笛卡尔积为:D1D2D3(张清玫,计

6、算机专业,李勇张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨张清玫,计算机专业,刘晨),(张清玫,计算机专业,王敏张清玫,计算机专业,王敏),(张清玫,信息专业,李勇张清玫,信息专业,李勇),(张清玫,信息专业,刘晨张清玫,信息专业,刘晨),(张清玫,信息专业,王敏张清玫,信息专业,王敏),(刘逸,计算机专业,李勇刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨刘逸,计算机专业,刘晨),(刘逸,计算机专业,王敏刘逸,计算机专业,王敏),(刘逸,信息专业,李勇刘逸,信息专业,李勇),(刘逸,信息专业,刘晨刘逸,信息专业,刘晨),(刘逸,信息专业,王敏刘逸,信息专业,王敏)D1域域导师集

7、合导师集合张清玫张清玫刘逸刘逸D2域域专业集合专业集合计算机专业计算机专业信息专业信息专业D3域域研究生研究生集合集合李勇李勇刘晨刘晨王敏王敏导师导师专业专业研究生研究生张清玫张清玫计算机专业计算机专业李勇李勇张清玫张清玫计算机专业计算机专业刘晨刘晨张清玫张清玫计算机专业计算机专业王敏王敏张清玫张清玫信息专业信息专业李勇李勇张清玫张清玫信息专业信息专业刘晨刘晨张清玫张清玫信息专业信息专业王敏王敏刘逸刘逸计算机专业计算机专业李勇李勇刘逸刘逸计算机专业计算机专业刘晨刘晨刘逸刘逸计算机专业计算机专业王敏王敏刘逸刘逸信息专业信息专业李勇李勇刘逸刘逸信息专业信息专业刘晨刘晨刘逸刘逸信息专业信息专业王敏王

8、敏=(2)元组)元组(Tuple)笛笛卡卡尔尔积积中中每每一一个个元元素素(d1,d2,dn)叫叫作作一一个个n元组元组(n-tuple)或简称)或简称元组元组。(3)分量()分量(Component)笛卡尔积元组(笛卡尔积元组(d1,d2,dn)中的每一个值)中的每一个值di叫作一个叫作一个分量分量。(4)基数()基数(Cardinalnumber)若若Di(i1,2,n)为为有有限限集集,其其基基数数为为mi(i1,2,n),则),则D1D2Dn的基数的基数M为:为:3.关系(关系(Relation)(1)关系)关系D1D2Dn的的子子集集叫叫作作在在域域D1,D2,Dn上上的的关系关系,

9、表示为:,表示为:R(D1,D2,Dn)R关系名关系名n关系的关系的目目或或度度(Degree)注意:关系是笛卡尔积的有限子集注意:关系是笛卡尔积的有限子集无限关系在数据库系统中是无意义的无限关系在数据库系统中是无意义的(2)元组)元组关系中的每个元素是关系中的元组,通常用关系中的每个元素是关系中的元组,通常用t 表示。表示。R(D1,D2,Dn)当当n=1时,称该关系为时,称该关系为单元单元关系关系(Unaryrelation)当当n=2时,称该关系为时,称该关系为二元二元关系关系(Binaryrelation)(3)元)元主主码码:从从多多个个候候选选码码选选出出标标识识元元组组的的码码;

10、候候选选码码的的所有属性称为所有属性称为主属性主属性;其它的属性称为;其它的属性称为非码属性非码属性。(4)码)码候选码候选码:能唯一标识关系中的一个元组的能唯一标识关系中的一个元组的属性组属性组全码全码:简单:简单的候选码只包含一个属性,但在的候选码只包含一个属性,但在极端极端的的情况下,关系模式的所有属性组是这个关系模式的候情况下,关系模式的所有属性组是这个关系模式的候选码,称为选码,称为全码(全码(All-key)基本关系基本关系(基本表或基表)(基本表或基表)实际存在的表,是实际存储数据的逻辑表示实际存在的表,是实际存储数据的逻辑表示查询表:查询表:查询结果对应的表查询结果对应的表视视

11、图图表表:由由基基本本表表或或其其他他视视图图表表导导出出的的表表,是是虚虚表表,不对应实际存储的数据不对应实际存储的数据(5)三类关系)三类关系(6)基本关系的性质)基本关系的性质列同质列同质域可同域可同行列无序行列无序元组不同(不完全遵守)元组不同(不完全遵守)原子分量原子分量一、关系一、关系2.2关系数据结构关系数据结构 域(域(DomainDomain)2.2.笛卡尔积(笛卡尔积(Cartesian ProductCartesian Product)3.3.关系(关系(RelationRelation)二、关系模式二、关系模式1关系模式的定义关系模式的定义2.关系模式与关系关系模式与关

12、系1关系模式的定义关系模式的定义R 关系名关系名U属性名集合属性名集合DU的的属性域属性域dom属性向域的映像属性向域的映像F属性间的依赖关系属性间的依赖关系R(U,D,dom,F)R(U)R(A1,A2,An)通常简记:通常简记:2.关系模式与关系关系模式与关系对关系的描述对关系的描述静态的、稳定的静态的、稳定的关系关系模式模式关系关系关系关系模式在某一时刻的模式在某一时刻的状态状态动态的、随时间不断变化的动态的、随时间不断变化的(通过上下(通过上下文加以区别)文加以区别)统称统称关系关系2.1关系模型概述关系模型概述2.2关系数据结构关系数据结构2.3关系的完整性关系的完整性2.4关系代数

13、关系代数不能为空不能为空基本关系基本关系 现实世界的现实世界的实体集实体集主码唯一主码唯一 现实世界实现实世界实体是可区分体是可区分为什么必须遵守实体完整性?为什么必须遵守实体完整性?一一实体完整性实体完整性学生(学生(学号学号,姓名,性别,姓名,性别,专业号专业号,年龄),年龄)专业(专业(专业号专业号,专业名),专业名)学生(学生(学号学号,姓名,性别,专业号,年龄)姓名,性别,专业号,年龄)课程(课程(课程号课程号,课程名,学分),课程名,学分)选修(选修(学号学号,课程号课程号,成绩),成绩)二二参照完整性参照完整性外码(外码(ForeignKey)设设F是是基基本本关关系系R的的一一

14、个个或或一一组组属属性性,但但不不是是关关系系R的的码码。如如果果F与与基基本本关关系系S的的主主码码Ks相相对对应应,则则称称F是关系是关系R的的外码外码基本关系基本关系R称称为为参照关系参照关系(ReferencingRelation)基基本本关关系系S称称为为被被参参照照关关系系(ReferencedRelation)或或目标关系目标关系(TargetRelation)。)。外码外码R(Kr,F,)S(Ks,)基本关系基本关系R称称为为参照关系参照关系基本关系基本关系S称称为为被参照关系被参照关系或或目标关系目标关系规则:规则:F上的值:上的值:空值空值(F的每个属性值均为空值)的每个属

15、性值均为空值)等于等于S中某个元组的主码值中某个元组的主码值F是关系是关系R的外码的外码参照的关系参照的关系被参照的关系被参照的关系被参照的关系被参照的关系学生关系学生关系-选修关系选修关系课程关系课程关系学生(学生(学号学号,姓名,性别,专业号,年龄)姓名,性别,专业号,年龄)课程(课程(课程号课程号,课程名,学分),课程名,学分)选修(选修(学号学号,课程号课程号,成绩),成绩)说明:说明:1、R和和S可以相同(自身参照)可以相同(自身参照)2、外码与被参照的主码同域、外码与被参照的主码同域3、外码与被参照的主码可不同名(一般取同名)、外码与被参照的主码可不同名(一般取同名)三三用户定义的

16、完整性用户定义的完整性检验:检验:DBMS例例:课程课程(课程号课程号,课程名,学分,课程名,学分)“课程名课程名”属性必须取唯一值属性必须取唯一值非主属性非主属性“课程名课程名”也不能取空值也不能取空值“学分学分”属性只能取值属性只能取值1,2,3,42.1关系模型概述关系模型概述2.2关系数据结构关系数据结构2.3关系的完整性关系的完整性2.4关系代数关系代数1.1.概念概念2.2.传统的集合传统的集合运算运算3.3.专门的关系运算专门的关系运算运算对象:关系运算对象:关系运算结果:关系运算结果:关系运算符:四类运算符:四类1关系运算关系运算的三个要素的三个要素l集合运算符:行集合运算符:

17、行l专门的关系运算符:专门的关系运算符:行行+列列l算术比较符:算术比较符:辅助关系运算辅助关系运算l逻辑运算符:逻辑运算符:辅助关系运算辅助关系运算一、概念一、概念运算符运算符含义含义运算符运算符含义含义集合集合运算运算符符-并并差差交交广义笛卡尔积广义笛卡尔积比较比较运算运算符符、大于、小于大于、小于大于等于大于等于小于等于小于等于等于、不等于等于、不等于关系关系运算运算符符选择选择投影投影连接连接除除逻辑逻辑运算运算符符 非非与与或或(1)R,t R,tAi设关系模式为设关系模式为R(A1,A2,An)它的一个关系设为它的一个关系设为Rt R:t是是R的一个元组的一个元组tAi:元组元组

18、t中相应于属性中相应于属性Ai的一个分量的一个分量2表示符号表示符号student(Sno,Sname,Ssex,Sage,Sdept)t student:t是是student的一个元组的一个元组tSname:元组元组t中中Sname的一个分量的一个分量(2)A,tA若若A=Ai1,Ai2,Aik,其中,其中Ai1,Ai2,Aik是是A1,A2,Ai ,An中的一部分,则中的一部分,则A称为称为属属性列或域列性列或域列。tA=(tAi1,tAi2,tAik)表示元组表示元组t在属性列在属性列A上的分量的集合。上的分量的集合。(3)trts R为为n目关系,目关系,S为为m目关系。目关系。tr

19、R,ts S,trts称为元组的连接。它是一个称为元组的连接。它是一个n+m列的元组,前列的元组,前n个个分量为分量为R中的一个中的一个n元组,后元组,后m个分量为个分量为S中的一个中的一个m元组。元组。(4)象集)象集Zx给给定定一一个个关关系系R(X,Z),X和和Z为为属属性性组组。当当tX=x时,时,x在在R中的中的象集象集(ImagesSet)为:)为:表示表示R中属性组中属性组X上值为上值为x的诸元组在的诸元组在Z上分量的集合上分量的集合Zx=tZ|t R,tX=x学学号号课课程程号号成成绩绩SnoCnoGrade95001192950012859500138895002290950

20、02380Z学号学号=t课程课程号,成绩号,成绩|t 选课表选课表,t学号学号=“95001”ZX选课表选课表Zx=tZ|t R,tX=xABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1RBCb1c2b2C3b2c1R R中中X XA A=a1=a1的的象集象集Z Zx1二二传统的集合运算传统的集合运算1.并并2.差差3.交交4.广义笛卡尔积广义笛卡尔积1.并(并(Union)RSRUSABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSRSR和和S条件条件相同的

21、目相同的目n属性域相同属性域相同RS结果结果仍为仍为n目关系目关系RS=t|t Rt S 2.差(差(Difference)RSRSABCa1b1c1R-SS-R?ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR-S结果结果R-S=t|t Rt SRSR SRS=R(R-S)RSRR-(R-S)3.交(交(Intersection)ABCa1b2c2a2b2c1R SABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSRS=t|t Rt S RS=R(R-S)4.广义笛卡尔积广义笛卡尔积R:n目关系,目关系,k1个元

22、组个元组S:m目关系,目关系,k2个元组个元组RS列:(列:(n+m)行:行:k1k2个元组个元组RS=trts|tr Rts SR.AR.BR.Ca1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1R SS.AS.BS.Ca1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RS三三专门的关系运算专门的关系运算1.选择选择2.投影投影3.连接连接4.除除1.选择(选择(Selection)又称为限制,

23、是根据条件对关系做又称为限制,是根据条件对关系做水平分割水平分割。运算符的含义:运算符的含义:F(R)=t|t RF(t)=真真F称为条件表达式。称为条件表达式。学学号号Sno姓姓名名Sname性性别别Ssex年年龄龄Sage所所在在系系Sdept95001李勇李勇男男20CS95002刘晨刘晨女女19IS95003王敏王敏女女18MA95004张立张立男男19ISStudent例例:设设有有一一个个学学生生-课课程程数数据据库库,包包括括学学生生关关系系Student、课程关系课程关系Course和选修关系和选修关系SC。Course课程号课程号课程名课程名先行课先行课学分学分CnoCnam

24、eCpnoCcredit1数据库数据库542数学数学23信息系统信息系统144操作系统操作系统635数据结构数据结构746数据处理数据处理27PASCAL语言语言64SC学学号号课课程程号号成成绩绩SnoCnoGrade9500119295001285950013889500229095002380例例1查询信息系(查询信息系(IS系)全体学生系)全体学生Sdept=IS(Student)或或5=IS(Student)结果:结果:SnoSnameSsexSageSdept95002刘晨刘晨女女19IS95004张立张立男男19IS例例2查询年龄小于查询年龄小于20岁的学生岁的学生Sage20(

25、Student)或或420(Student)结果:结果:SnoSnameSsexSageSdept95002刘晨刘晨女女19IS95003王敏王敏女女18MA95004张立张立男男19IS2.投影(投影(Projection)是对关系进行是对关系进行垂直垂直分割,消去分割,消去重复行重复行A(R)=tA|t RA:R中的属性列中的属性列例例3查询学生的姓名和所在系查询学生的姓名和所在系Sname,Sdept(Student)或或2,5(Student)结果:结果:SnameSdept李勇李勇CS刘晨刘晨IS王敏王敏MA张立张立IS例例4查询学生关系查询学生关系Student中都有哪些系。中都有

26、哪些系。Sdept(Student)结果:结果:SdeptCSISMA3.连接(连接(Join)从两个关系的笛卡尔积中选取满足条件的元组从两个关系的笛卡尔积中选取满足条件的元组A和和B:为为R和和S上有比性的属性上有比性的属性组组:比较:比较运算符(常见运算符(常见=)ABtrtsR S=|tr Rts StrAtsB(1)等值连接)等值连接为为“”的连接称为的连接称为等值连接等值连接含义:含义:R与与S的广义笛卡尔积中选取的广义笛卡尔积中选取A=B的元组的元组 A=BtrtsR S=|tr Rts StrA=tsB(2)自然连接()自然连接(Naturaljoin)是两个关系连接结果中去掉重

27、复的属性列是两个关系连接结果中去掉重复的属性列trtsR S=|tr Rts StrB=tsB例例ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RSAR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310 R SCE等值连接等值连接R S AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32自然连接自然连接R S ABCEa1b153a1b267a2b3810a2b382笛卡尔积笛卡尔积连接(连接()等值连接等值连接自然连接自然连接RS=trts|tr Rts S ABtrtsR S=|tr Rts StrAtsB A=BtrtsR S=|tr Rts StrA=tsBtrtsR S=|tr Rts StrB=tsB

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

当前位置:首页 > 教育专区 > 教案示例

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

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