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

类型数据库关系模型课件.ppt

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

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

    特殊限制:

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

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

    1、1第二章 关系模型2.1 关系模型概述2.2 关系数据结构及形式化定义2.3 关系的完整性2.4 关系代数2.5 关系演算2.6 小结2.1 关系模型概述22.1 概述 E.F.Codd于70年代初提出关系数据理论,他因此获得1981年的ACM图灵奖 关系理论是建立在集合代数理论基础上的,有着坚实的数学基础 早期代表系统 System:由IBM研制 INGRES:由加州Berkeley分校研制 目前主流的商业数据库系统 Oracle,Informix,Sybase,SQL Server,DB2 Access,Foxpro,Foxbase32.1 概述 数据结构:二维表 关系操作:查询(Quer

    2、y):选择(select)、投影(project)、连接(join)除(divide)、并(union)、交(intersection)差(difference)增加(insert)、删除(delete)、修改(updated)关系代数,关系演算,SQL 关系的三类完整性约束 实体完整性、参照完整性、用户自定义的完整性42.1 概述关系代数是用对关系的运算来表达查询要求的方式。关系演算是用谓词表达查询要求的方式。按谓词变元的基本对象是元组变量还是域变量分为元组关系演算和域关系演算 52.1 概述具体系统中的实际语言SQL介于关系代数和关系演算之间,由IBM公司研制system R时提出QUEL

    3、 基于Codd提出的元组关系演算语言ALPHA,在INGRES上实现QBE 基于域关系演算,由IBM公司研制62.2 关系数据结构及形式化定义inim1 域(Domain)一组值的集合,这组值具有相同的数据类型 如:整数的集合、字符串的集合、全体学生的集合 笛卡尔积(Cartesian Product)一组域D1,D2,Dn的笛卡尔积为:D1D2Dn=(d1,d2,dn)|diDi,i=1,n 笛卡尔积的每个元素(d1,d2,dn)称作一个n-元组(n-tuple)元组的每一个值di叫做一个分量(component)若Di的基数为mi,则笛卡尔积的基数为72.2 关系数据结构及形式化定义(续)

    4、例:设 D1为学生集合(T)=张群,徐晶,王刚 D2为性别集合(S)=男,女 则D1D2是个二元组集合,元组个数为32,是所有可能的(学生,性别)元组集合TS张群张群男男张群张群女女徐晶徐晶男男徐晶徐晶女女王刚王刚男男王刚王刚女女D1D2=82.2 关系数据结构及形式化定义(续)例:设 D1为教师集合(T)=t1,t2 D2为学生集合(S)=s1,s2,s3 D3为课程集合(C)=c1,c2 则D1D2D3是个三元组集合,元组个数为232,是所有可能的(教师,学生,课程)元组集合 笛卡尔积可表为二维表的形式TSCt1s1c1t1s1c2t1s2c1t2s3c2域(课程集合)元组92.2 关系数

    5、据结构及形式化定义(续)关系 笛卡尔积D1D2Dn的子集叫做在域D1,D2,Dn上的关系,用R(D1,D2,Dn)表示 R是关系的名字,n是关系的度或目 关系是笛卡尔积中有意义的子集 关系也可以表示为二维表关系TEACH(T,S,C)TSCt1s1c1t1s1c2t1s2c1t2s3c2元组属性102.2 关系数据结构及形式化定义(续)关系的性质列是同质的行列的顺序无关紧要任意两个元组不能完全相同每一分量必须是不可再分的数据。不同的属性,属性名不能相同学学生生姓名姓名学号学号年年月月出生日期出生日期日日112.2 关系数据结构及形式化定义(续)数据结构 单一的数据结构关系 实体集、联系都表示成

    6、关系学生学生课程课程选修选修属于属于系系教师教师教授教授工作工作122.2 关系数据结构及形式化定义(续)候选码(Candidate Key)关系中的一个属性组,其值能唯一标识一个元组。若从属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码 如DEPT中的D#,DN都可作为候选码 任何一个候选码中的属性称作 如SC中的S#,C#主码(Primary Key)进行数据库设计时,从一个关系的多个候选码中选定一个作为主码 如可选定D#作为DEPT的主码 外部码(Foreign Key)关系R中的一个属性组,它不是R的码,但它与另一个关系S的码相对应,则称这个属性组为R的外部码 如

    7、S关系中的D#属性132.2 关系数据结构及形式化定义(续)关系模式 关系的描述称作关系模式,包括关系名、关系中的属性名、属性向域的映象、属性间的数据依赖关系等,记作R(A1,A2,An)属性向域的映象一般直接说明为属性的类型、长度等 某一时刻对应某个关系模式的内容(元组的集合)称作关系 关系模式是型,是稳定的 关系是某一时刻的值,是随时间不断变化的142.2 关系数据结构及形式化定义(续)关系数据库 其型是关系模式的集合,即数据库描述,称作数据库的内涵(Intension)其值是某一时刻关系的集合,称作数据库的外延(Extension)152.3 关系的完整性 关系模式的完整性 实体完整性

    8、关系的主码中的属性值不能为空值 空值:不知道或无意义 意义:关系对应到现实世界中的实体集,元组对应到实体,实体是相互可区分的,通过主码来唯一标识,若主码为空,则出现不可标识的实体,这是不容许的学号姓名性别系名0101张男CS0102李女CS0203赵男MA162.3 关系的完整性(续)参照完整性 如果关系R2的外部码Fk与关系R1的主码Pk相对应,则R2中的每一个元组的Fk值或者等于R1 中某个元组的Pk 值,或者为空值 意义:如果关系R2的某个元组t2参照了关系R1的某个元组t1,则t1必须存在 例如关系S在D#上的取值有两种可能空值,表示该学生尚未分到任何系中若非空值,则必须是DEPT关系

    9、中某个元组的D#值,表示该学生不可能分到一个不存在的系中172.3 关系的完整性(续)学号姓名性别系名0101张男CS0102李女CS0203赵男MA课号课名CS145数据库CS148操作系统CS180数据结构学号课号成绩0101CS145880101CS148900102CS180870203CS14578182.3 关系的完整性(续)供应商号供应商名所在城市B01红星北京S10宇宙上海T20黎明天津Z01立新重庆零件号颜色供应商号010红B01312白S10 201蓝T20今要向关系P中插入新行,新行的值分别列出如下。哪些行能够插入?A(037,绿,null)B(null,黄,T20)C(

    10、201,红,T20)D(105,蓝,B01)E(101,黄,T11)零件关系P(主码是“零件号”,外码是“供应商号”)供应商关系S(主码是“供应商号”)192.3 关系的完整性(续)用户定义的完整性 用户针对具体的应用环境定义的完整性约束条件 如S#要求是8位整数,SEX要求取值为“男”或“女”系统支持 实体完整性和参照完整性由系统自动支持 系统应提供定义和检验用户定义的完整性的机制20关系代数 属于关系操作的一种 关系代数是一种抽象的查询语言 通过对关系的运算来表达查询操作 运算对象、结果均为关系 运算符 集合运算符、专门的关系运算符、比较运算符、逻辑运算符21关系代数运算符222.4 关系

    11、代数 基本运算 一元运算 选择、投影 多元运算 笛卡儿积、并、集合差 其它运算 集合交、自然连接、除、赋值 扩展运算 广义投影、外连接、聚集 修改操作 插入、删除、更新232.4 关系代数(续)并运算 定义 所有至少出现在两个关系中之一的元组集合R Sn两个关系R和S若进行并运算,则它们必须是相容的:关系R和S必须是同元的,即它们的属性数目必须相同对i,R的第i个属性的域必须和S的第i个属性的域相同242.4 关系代数(续)并运算ABC367257723443RABC345723SABC367257723443345RS 252.4 关系代数(续)262.4 关系代数(续)2.4 关系代数(续

    12、)ABCabcbafcbdRSABCbgabafDEFghijklTABCabcbafcbdbgaR S272.4 关系代数(续)差运算 定义 所有出现在一个关系而不在另一关系中的元组集合 R和S必须是相容的R S282.4 关系代数(续)差运算ABC367257723443RABC345723SABC367257443RS ABC345SR 292.4 关系代数(续)302.4 关系代数(续)ABCabcbafcbdRSABCbgabafDEFghijklTABCabccbdR-S312.4 关系代数(续)交运算 定义 所有同时出现在两个关系中的元组集合 交运算可以通过差运算来重写RS=R

    13、(R S)R S322.4 关系代数(续)交运算ABC367257723443RABC345723SABC723RS 332.4 关系代数(续)342.4 关系代数(续)ABCabcbafcbdRSABCbgabafDEFghijklTABCbafR S352.4 关系代数(续)广义笛卡尔积 元组的连串(Concatenation)若r=(r1,rn),s=(s1,sm),则定义r与s的连串为:定义 两个关系R,S,其度分别为n,m,则它们的笛卡尔积是所有这样的元组集合:元组的前n个分量是R中的一个元组,后m个分量是S中的一个元组 RS的度为R与S的度之和,RS的元组个数为R和S的元组个数的乘

    14、积rs=(r1,rn,s1,sm)362.4 关系代数(续)AB12RCD10102010EaabbSAB11112222CD 1010201010102010EaabbaabbRx S372.4 关系代数(续)ABCabcbafcbdRSABCbgabafDEFghijklTR.AR.BR.CS.AS.BS.CabcbgaabcbafbafbgabafbafcbdbgacbdbafR S382.4 关系代数(续)记号说明 给定关系模式R(A1,A2,An),设R是它的一个具体的关系,tR是关系的一个元组 分量设tR,则tAi表示元组t中相应于属性Ai的一个分量 属性列Ai=Ai1,Ai2,A

    15、ikA1,A2,An,称A为属性列表示A1,A2,An中去掉A后剩余的属性组tAi=(tAi1,tAi2,tAik)象集 给定关系R(X,Z),X和Z为属性组。当tX=x时,x在R中的象集(Images Set)为:Zx=tZ|t R,tX=x,它表示R中属性组X上值为x的诸元组在Z上分量的集合。392.4 关系代数(续)学号姓名性别系别0101张男CS0102李女CS0203赵男MA0103吴女CS关系模式:学生(学号,姓名,性别,系别)元组t:(0102,李,女,CS)t性别:女属性组X:性别,系别t性别,系别:(女,CS)属性组Z:学号,姓名tX=(女,CS)象集Zx=?CS系全部女生的

    16、学号,姓名XZX=(女,CS),Zx=?X Z姓名课程张蕊物理王红数学张蕊数学x=张蕊张蕊Z Zx x课程数学物理张蕊同学张蕊同学所选修的所选修的全部课程全部课程从R中选出在X上取值为张蕊张蕊的元组,去掉X上的分量,只留Z上的分量402.4 关系代数(续)选择运算 基本定义在关系R中选择满足给定条件的元组(从行的角度)F是选择的条件,t R,F(t)要么为真,要么为假F的形式:由连接而成逻辑表达式:,算术表达式:X YX,Y是属性名、常量、或简单函数是比较算符,,412.4 关系代数(续)选择运算422.4 关系代数(续)ABC367257723443RA5(R)ABC367257443A5

    17、C=7(R)ABC367257432.4 关系代数(续)SNOSNASEXDEPT0101张男CS0102李女CS0203赵男MA0103吴女CSDept=CS(S)SSNOSNASEXDEPT0101张男CS0102李女CS0103吴女CS4=CS(S)442.4 关系代数(续)示例:用关系表达式表达下列查询 找前页关系S中计算机系(代号:CS)全部的男生Dept=CS SEX=男(S)45关系运算选择()例:ssex=男 AND sdep=IS(Student)462.4 关系代数(续)投影 定义 从关系R中取若干列组成新的关系(从列的角度)投影的结果中要去掉相同的行472.4 关系代数(

    18、续)投影cbcfedcbaCBABCbcef R R B,C(R)2,3(R)482.4 关系代数(续)投影Student(S#,SN,Age)Course(C#,CN)SC(C#,S#,Score)示例给出所有学生的姓名和年龄SN,AGE(S)找001号学生所选修的课程号C#(S#=001(SC)49关系运算投影()例:ssex,sage(student)502.4 关系代数(续)选择与投影的区别选择:投影:512.4 关系代数(续)SNOSNASEXDEPT0101张男CS0102李女CS0203赵男MA0103吴女CS 示例 列出CS系和MA系学生学号和姓名方案1:SNO(DEPT=CS

    19、 DEPT=MA(S)方案2:SNO(DEPT=CS(S)SNO(DEPT=MA(S)S522.4 关系代数(续)连接 定义 从两个关系的广义笛卡儿积中选取给定属性间满足一定条件的元组 A,B为R和S上度数相等且可比的属性列 为算术比较符,为等号时称为等值连接 R S=RA SB(RS)A B532.4 关系代数(续)987654321CBADE3162ABCDE123311236245662 R S R S B D R R S S542.4 关系代数(续)自然连接 定义 从两个关系的广义笛卡儿积中选取在相同属性列B上取值相等的元组,并去掉重复的行。自然连接与等值连接的不同 自然连接中相等的分

    20、量必须是相同的属性组,并且要在结果中去掉重复的属性,而等值连接则不必。当R与S无相同属性时,R S RS552.4 关系代数(续)AB12412C DaababRB13123DaaabbES11112aaaabA B C D ER S562.4 关系代数(续)987654321CBACD3162 R R S SABCD12314562 R SR S572.4 关系代数(续)除 给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。R和S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上的投影:元组在X上分量

    21、值x的象集 Yx包含S在Y上投影的集合。记作:R S=trX|tr R y(S)Yx其中,Yx为x在R中的象集,x=trX582.4 关系代数(续)RSXYYZYxy(S)R S592.4 关系代数(续)ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2R S R S=Aa1602.4 关系代数(续)ABCDabcdabefabdebcefedcdedefCDcdefABabedABabbcedABCDabcdabefbccdbcefedcdedefR AB(R)S AB(R)CD(S)AB(R)CD(S)-R

    22、ABCDbccdR S=ABabbcedABbc-=RS=X(R)X(X(R)Y(S)R)612.4 关系代数(续)姓名课程成绩张军物理88王红数学80张军数学90物理数学课程姓名张军选修了全部课程的选修了全部课程的学生的姓名学生的姓名622.4 关系代数(续)学号Sno姓名Sname性别Ssex年龄Sage系别Sdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19IS 例题背景S课程号Cno课程名Cname先行课Cpno学分Ccredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27PASCAL64C学号Sno课程

    23、号Cno成绩Grade9500119295001285950013889500229095002380SC632.4 关系代数(续)查询信息系(IS)的全体学生 Sdept=IS(S)或 5=IS(S)查询年龄小于20岁的学生 Sage 2ABC456789 t|R(t)S(t)2.5 关系演算(续)-元组关系演算73ABC123456789ABC123346569RS t|(u)(S(t)R(u)tC uA)75ABC123456789ABC123346569RS2.5 关系演算(续)-元组关系演算R.BS.CR.A534837867897 t|(u)(v)(R(u)S(v)uAvB tA=

    24、uB tB=vC tC=uA)76 表达式的安全性 元组关系演算有可能会产生无限关系,这样的表达式是不安全的 如t|(t R),求所有不在R中的元组 引入公式P的域域概念,用dom(P)表示 dom(P)=显式出现在P中的值+在P中出现的关系的元组中出现的值(不必是最小集)如dom(t|(t R)是R中出现的所有值的集合 如果出现在表达式t|P(t)结果中的所有值均来自dom(P),则称t|P(t)是安全的2.5 关系演算(续)-元组关系演算77ABA1B1A1B2A2B3dom(t R)=A1,A2,B1,B2,B3ABA1B3A2B1A2B2R t|(t R)2.5 关系演算(续)-元组关

    25、系演算782.5 关系演算(续)-元组关系演算学号Sno姓名Sname性别Ssex年龄Sage系别Sdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19IS 例题背景S课程号Cno课程名Cname先行课Cpno学分Ccredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27PASCAL64C学号Sno课程号Cno成绩Grade9500119295001285950013889500229095002380SC792.5 关系演算(续)-元组关系演算 查询信息系(IS)的全体学生 Sdept=IS(S)t|S(t)tS

    26、dept IS 查询年龄小于20岁的学生 Sage 20(S)t|S(t)tSage 800Get W(Prof):Prof.Sal800找出工资在800元以上的老师的姓名t|sPROF(tPNAME sPNAME sSAL 800)给出计算机系老师的姓名 t|uDEPT(uDNAME=“计算机系”sPROF(sDNO=uDNO tPNAME sPNAME)85 形式化定义 x1 x2 xn|P(x1,x2,xn)xi代表域变量,P为由原子构成的公式 原子公式 R,记,记R(x1,x2,xn)xi是域变量或域常量 x y域变量x与y之间满足比较关系 x c域变量x与常量c之间满足比较关系 2.

    27、5 关系演算(续)-域关系演算86ABC123456789ABC123346569RSABC456R1=x y z|R(x,y,z)x3DE7548W2.5 关系演算(续)-域关系演算87ABC123456789ABC123346569RSABC546R1=x y z|R(y,x,z)x3DE7548W2.5 关系演算(续)-域关系演算88ABC123456789ABC123346569RSDE7548WBDA574877847R2=x y z|(u)(v)(R(z,x,u)W(y,v)uv)2.5 关系演算(续)-域关系演算89ABC123456789ABC123346569RSABC123

    28、456789346R2=xyz|R(x,y,z)(S(x,y,z)y=4)DE7548W2.5 关系演算(续)-域关系演算902.5 关系演算(续)-域关系演算学号Sno姓名Sname性别Ssex年龄Sage系别Sdept95001李勇男20CS95002刘晨女19IS95003王敏女18MA95004张立男19IS 例题背景S课程号Cno课程名Cname先行课Cpno学分Ccredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27PASCAL64C学号Sno课程号Cno成绩Grade9500119295001285950013889500229095002380SC912.5 关系演算(续)-域关系演算 查询信息系(IS)的全体学生 Sdept=IS(S)abcde|S(a,b,c,d,e)e IS 查询年龄小于20岁的学生 Sage 20(S)abcde|S(a,b,c,d,e)d 20 检索选修课程号为5的学生学号和姓名 xy|(x)(v)(S(xyz)SC(uvw)x=u v=5)922.6 小结 关系模型 关系数据结构及定义 完整性约束 关系代数:5个基本运算 关系演算:元组、域

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

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


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


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

    163文库