ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:27.04KB ,
资源ID:2095077      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-2095077.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库系统讲义03关系模型及关系运算秋解读.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数据库系统讲义03关系模型及关系运算秋解读.docx

1、数据库系统讲义03关系模型及关系运算秋解读 数据库系统概念与技术第三章关系模型及关系运算真即是美,知识是最高的善无限风光在险峰1France 数据库系统概述3Hungary你我它Belgium实体-联系模型Germany2SQL Ireland4SQL 编程Italy5数据完整性Latvia6关系数据库设计Lithuania7查询处理及优化Luxemburg8数据库管理系统DBMS Netherlands9 3.1 关系3.2 关系模型3.3 关系代数3.4 元组关系演算3.5 域关系演算数据库数据的集合p r o c e s s p r o c e s s p r o c e s s p r

2、 o c e s s p r o c e s srequestresponse访问语言语言处理数据结构交互式语言嵌入式语言完整性控制DBMS 其它查询优化处理数据的概念模型数据库系统设计现实世界逻辑结构数据操作物理结构 第三章关系模型及关系运算3.1 关系3.2 关系模型3.3 关系代数3.4 元组关系演算3.5 域关系演算 关系模型(relation modelz关系理论是建立在集合代数理论基础上的,有着坚实的数学基础。z E.F.Codd于70年代初提出关系数据理论,他因此获得1981年的ACM图灵奖。z早期代表系统System R:由IBM研制。INGRES:由加州Berkeley分校研

3、制。z目前主流的商业数据库系统Oracle,Informix,Sybase,SQL Server,DB2。Access,Foxpro,Foxbase。 域(Domainz一组值的集合,这组值具有相同的数据类型.Null是任何域的成员.笛卡尔积(Cartesian Productz一组域D1 , D2 , D n的笛卡尔积为:D1D2D n= (d1 , d2 , , d n | d iD i, i=1,n z笛卡尔积的每个元素(d1 , d2 , , d n称作一个n-元组(n-tuple。z元组的每一个值d i叫做一个分量(component. z若D i为有限集,其基数为m i,则笛卡尔积

4、的基数为i ni m=1 例:设D 1为教师集合(T = t 1,t 2D 2为学生集合(S = s 1,s 2 ,s 3D 3为课程集合(C = c 1,c 2则笛卡尔积D 1D 2D 3是个三元组集合,元组个数为232,是所有可能的(教师,学生,课程元组集合:t 1,s 1,c 1, t 1,s 1,c 2, t 1,s 2,c 1, t 1,s 2,c 2, t 1,s 3,c 1, t 1,s 3,c 2, t 2,s 1,c 1, t 2,s 1,c 2, t 2,s 2,c 1, t 2,s 2,c 2, t 2,s 3,c 1, t 2,s 3,c 2 t 1t 2s 1s 2s

5、 3c 1c 2t 1,s 1,c 1t 1,s 1,c 2 关系(relationz 笛卡尔积D 1D 2D n 的子集叫做在域D 1, D 2, D n 上的关系,用R (D 1, D 2, D n 表示。z R 是关系的名字,n 是关系的度或目(Degree。n=1,一元关系n=2,二元关系z 关系是笛卡尔积中有意义的子集。A=所有的男人所有的女人所有的小孩有家庭关系的男人,女人,小孩 AA=所有的学生所有的课程有选修关系的学生,课程 A z 关系和表的一一对应一个关系对应一张表,表用表名标识.表和关系同名.一个元组对应一行数据,行用行号标识.由于行数会发生变化(增加,删除,修改,因此,

6、行一般不命名.表的所有行的集合是笛卡尔积的子集.某个分量的所有取值对应表的某一列的所有取值.列用列号标识.由于列数一般不发生变化,因此,列要命名,称为列名或属性名.表的某一列的所有取值的集合是某个域的子集(域名不一定是列名,因为域和列不等价.关系表元组行分量列t1,s3,c1元组行t1,s2,c2t1,s2,c1t1,s1,c2t1,s1,c1分量列关系表 z 用表表示关系.例:设D 1为教师集合(T = t 1,t 2D 2为学生集合(S = s 1,s 2 ,s 3D 3为课程集合(C = c 1,c 2则D 1D 2D 3上的一个关系:R(D 1,D 2,D 3=t 1,s 1 ,c 1

7、, t 1,s 1 ,c 2, t 1,s 2 ,c 1, t 1,s 2 ,c 2, t 2,s 3 ,c 2对应的表如下元组/行号分量/列号属性名teach 表/关系名 关系的性质z列是同质的.即每一列中的分量来自同一域,是同一类型的数据. d iD iSsex男,女 z 表的不同列可以来自同一个域,为了区别不同的列,每列必须有不同的属性名.例:设D 1=Person = 王兵,李平,张英,丁梅,吴芳D 2=Child = 王一,李一,李二则D 1D 1D 2上的一个家庭关系: R(D 1,D 2,D 3=Family=王兵,张英,王一, 李平,丁梅,李一, 李平,丁梅,李二对应的表如下李

8、一丁梅李平李二丁梅李平王一张英王兵Child Mother (角色Father (角色Family z行列的顺序无关紧要.同一个关系 z任意两个元组不能完全相同(集合内不能有相同的两个元素. z每一分量必须是不可再分的数据项(1NF,复合属性不允许,多值属性值分为多个行.符合第一范式(Table不符合第一范式(Not Table 关系的码z 候选码(Candidate Key 关系中的一个属性组,其值能唯一标识一个元组.若从属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码.-E-R 模型中候选码.任何一个候选码中的属性称作主属性,其它的为非主属性.z 主码(Primary

9、 Key 进行数据库设计时,从一个关系的多个候选码中选定一个作为主码. -E-R 模型中主码.全码PK(Student=S#PK(Family=Father,Mother,Child z 外码(Foreign Key 关系r 中的一个属性组,它不是r 的码,但它与另一个关系s 的主码相对应,则称这个属性组为r 的参照s 的外码, r 称为参照关系, s 称为被参照关系.主码主码外码FK(Student=D#3.1 关系 第三章关系模型及关系运算3.1 关系3.2 关系模型3.3 关系代数3.4 元组关系演算3.5 域关系演算域笛卡尔积关系关系的性质关系的候选码和主属性关系的主码和外码 数据结构

10、.z 单一的数据结构关系z 关系模式: 关系的结构描述关系名.关系中的属性名.属性向域的映象.属性向域的映象, 一般直接说明为属性的类型、长度等.属性间的依赖关系.3.2 关系模型R (A1:D1 , A2:D2 , , An :Dn 关系模式关系模式的简单表示R (A1 , A2 , , AnStudent ( S# char(8, Sname char(10, Ssex char(2, Sage integer ,D# char(2, Sclass char(6Student (S#,Sname,Ssex,Sage,D#,class z 关系实例:即关系,是符合某个关系模式在某个时刻的元组

11、的集合.关系模式和关系实例是型与值的关系.z 关系模式与关系(实例同一关系模式下,可有很多的关系.关系模式是关系的结构描述,关系是关系模式在某一时刻的数据.关系模式是稳定的;而关系是某一时刻的值,是随时间可能变化的.Student (S# char(8, Sname char(10, Ssex char(2, Sage integer , D# char(2, Sclass char(6 z (关系数据库模式.关系数据库的描述.即一组域的定义以及在这组域上定义的若干关系模式的集合.z (关系数据库实例.符合某个数据库模式在某个时刻关系的集合.数据库模式和数据库实例是型与值的关系.z 关系数据库

12、形式化描述.域. D= D k , k=1,2,.关系模式. R(A 1, A 2, A j , A n , j =1,2,n. 主码. PK(R .外码. FK(R .元组. t(i =(r i 1, r i 2 , r ij , r i n , r ij D i D, i =1,2,m. t 为元组变量. z 关系数据库模式的模式图.表示属性以及主码和外码.主码主码外码FK(Student=D#S#SnameSname Ssex Sage D#SclassD#DeptstudentDname Dean父子 z E-R 模型向关系模式的转换实体集的关系模式: A(A1,A2,A3,; B(B

13、1,B2,B3,联系集的关系模式: Q(PK(A,PK(B,Q1,Q2,递归联系集的关系模式: Q(role1,role2,Q1,Q2,A3A2A1实体集A 联系集Q A1Q1Q2B1E-R 模型关系模型关系模式A (A1, A2, A3Q (A1,B1, Q1, Q2B3B2B1B (B1, B2, B3A1A2A3Q1Q2实体集B B1B2B3PK(APK(B E-R 模型学生课程选修教师教授S#SN SEXAGESD SCOREC#CNPC#CREDITP#PND#SAL S (S#, SN , SEX , AGE , SDC (C#, CN , PC# , CREDITPROF (P#

14、, PN, D# , SALSC (S#, C#, SCORETEACH (P#, C#PK(SPK(CPK(PROFPK(C关系模式 E-R 模型学生课程选修教师教授S#SN SEXAGESD SCOREC#CNPC#CREDITP#PND#SAL S#SN SEX AGE SDS C#CN PC#CREDITC P#PN D#SALPROF S#C#SCORESC P#C#TEACH 关系模式图 E-R模型EMPNO#NAMESEX AGEDEPT关系模式Work-foremployeeworkermanageremployee(EMPNO#, NAME, SEX , AGE , DEPT

15、 Work-for(worker,managerrole1role2 弱实体集的关系模式: B(PK(A,B1,B2,B3,标识性联系集的关系模式: Q(PK(A,D(B,标识性联系集无需单独建表,因为其关系模式被弱实体集的关系模式所包含.A3A2A1强实体集A标识性联系集QA1B1E-R 模型关系模型关系模式A (A1, A2, A3Q (A1,B1A1B3B2B1B (A1,B1, B2, B3A1A2A3B1B2B3PK(AD(BD(BPK(AD(B弱实体集B 特殊属性O 复合属性:每个子属性单独创建一列.”关系的基本特征是每一分量必须是不可再分的数据项”.O 派生属性:作为表的计算列,

16、it dependsO 多值属性:关系理论addr city str post-code state str-nostr-nameapart-nocustomer cust-id cust-name customer (cust-id, cust-name, addr (state, city, post-code,str (str-no, str-name, apart-nocustomercustomer (cust-id, cust-name, state,city, post-code,str-no, str-name, apart-no 码.E-R模型中的码(超码,候选码,主码自动转

17、换为关系的码(超码,候选码,主码.O实体集的码O联系集的码91:191:m9m:nO递归联系集的码O弱实体集的码O标识性联系集的码 z 模型、模式和实例的比较E-R 模型关系模型E-R 模式关系模式表R (A1, A2, , ApE-R 实例关系实例实体集联系集属性属性属性A (A1, A2, , AnQ (Q1, Q2, , QmE-R 的码关系的码PK(R PK(A PK(Q 课堂练习将银行企业的E-R 模型转换为关系模式(模式图branchcustomer loanloan-numberaccountaccount-numberemployeecust-banker typedeposi

18、torpayment-numberborrower Work-forworkermanagerloan-branch loan-paymentpaymentbranch-name assets branch-citycustomer-id , customer-citycustomer-street customer-name employee-id start-dateemployee-name employee-lengthtelephone-numberdependent-namebalanceamountpayment-amountpayment-dateaccess-date 关系操

19、作.关系操作是集合操作,操作的对象及结果都是集合,是一次一集合(Set-at-a-time的方式.查询和修改.z过程化.用户指导系统对数据库执行一系列操作以计算所需结果.关系代数.用对关系的运算来表达查询,需要指明所用操作.基本运算包括:选择、投影、连接、除、并、交、差.z非过程化.用户只需描述所需信息,而不用给出获取该信息的具体过程.关系演算,用谓词来表达查询.元组关系演算:谓词变元的基本对象是元组变量.域关系演算:谓词变元的基本对象是域变量. z具体数据库系统中的实际语言ISBL:关系代数语言,由IBM公司研制。QUEL,ALPHA:Codd提出的基于元组关系演算语言,在INGRES上实现

20、。QBE:基于域关系演算语言,由IBM公司研制。SQL:介于关系代数和关系演算之间,由IBM公司在研制System R时提出的,成为关系数据库标准语言。 关系模型的完整性z实体完整性(主码实体是可区分的,即具有唯一性标识。每个关系必须有一个主码。主码不能取Null值。主码 ENOEName DNOEMPDEPT DNODName03小陈0003小刘000302小李000201小王0001DNO EName ENO 网络教研室02软件教研室01DName DNO z 参照完整性(外码。关系r 的参照关系s 的外码FK(r 的取值有两种:Null 值。关系s 的某个主码的取值。EMPDEPT z用

21、户自定义完整性。用户针对具体的应用环境定义的完整性约束条件。年龄的约束条件,如,0-100性别的约束条件,0,1年龄在12, 35之间要求名字在5个汉字字符之内性别只能是“男”或“女”颠覆完整性的示例 第三章关系模型及关系运算3.1 关系3.2 关系模型3.3 关系代数3.4 元组关系演算3.5 域关系演算关系模式,关系数据库模式关系实例,关系数据库实例关系数据库的模式图E-R模型向关系模式的转换关系操作过程化:关系代数非过程化:元组和域关系演算关系模型的完整性实体完整性参照完整性用户自定义完整性 查询z基本运算一元运算O选择、投影、更名。多元运算O笛卡儿积、集合并、集合差。z附加运算,可由基

22、本运算导出的运算集合交、自然连接、除、赋值。z扩展的关系代数运算广义投影、聚集、外连接。数据库修改z删除、插入、更新。 A 1A iA nA 2一些记号。给定关系模式R(A 1, A 2 , , A n ,设R 是它的一个具体的关系,t R 是关系的一个元组.z 分量设t R, 则tA i 表示元组t 中相应于属性A i 的一个分量.z 属性列A = A i1,A i2 , ,A ik A 1,A 2 , ,A n , 称A 为属性列.A 表示A 1,A 2 , ,A n 中去掉A 后剩余的属性组.tA = ( tA i1, tA i2, , tA ik .Rt RA AtA = ( tA i

23、1, tA i2, , tA ik tA i 示例关系S (S#, SNAME , SEX , AGE , D#-学生C (C#, CN , PC# , CREDIT(学分 -课程SC (S# , C#, SCORE-选修关系PROF (P#, PNAME, AGE, D# , SAL(工资 -教师PC (P# , C#-教课DEPT (D#, DNAME , DEAN(系主任作为教师的编号P# -系学生S课程C 教师PROF选课SC教课PCS#SEXSCORE SNAME AGE D#院系DEPTD#DEAN DNAME C#PC#CN CREDITP#AGEPNAME D#SALE-R 模

24、型关系模式 S#SNAME SEX AGE D#SC#CN PC#CREDITC P#PNAME AGE D#SALPROF S#C#SCORESC P#C#PC D#DNAME DEANDEPT PCPROFDEPTSCSC模式图关系 202119192022学生年龄AGE CS CS MA CI MA CS所属系名SD 男女女男女男性别SEX A B C D E FS1S2S3S4S5S6学生姓名SN 学号S#C1C1C2C4先行课号码PC#23424学分CREDITG H I J KC1C2C3C4C5课程名字CN 课程号C#S(S# , SN , SEX , AGE , SDC(C#

25、, CN , PC# , CREDITSC(S# , C# , SCOREA A AB BC C B C B BD C B BC1C2C3C5C1C2C4C2C3C4C3C5C2C3C5S1S1S1S1S2S2S2S3S3S3S4S4S5S5S5学习成绩SCORE课程号C#学号S# D1D1D2D3D3D4系别*025*工资SAL 302925412633年龄AGE A B C D E FP1P2P3P4P5P6姓名PNAME 工号P#PROF(P# , PNAME , AGE , D# , SALC1C2C1C1C2C3P1P1P2P3P4P4课程名C#工号P#PC(P# , C#计算机系数

26、学系管理系系名DNAME P1P2P4D1D2D3系主任DEAN 系号D#DEPT(D# , DNAME , DEAN 选择运算(-selectz定义:在关系R中选择满足给定条件的元组(从行的角度.z公式:(R=t | t R , F(t = 真,F(tF(t是选择的条件,t R, F(t要么为真,要么为假.F(t=(算术表达式1逻辑运算符(算术表达式2逻辑运算符:,算术表达式:X YO X,Y是属性名、常量、或简单函数.O是比较算符, , , , , =, 202119192022学生年龄AGE CS CS MA CI MA CS所属系名SD 男女女男女男性别SEX A B C D E FS

27、1S2S3S4S5S6学生姓名SN 学号S#20212022学生年龄AGE CS CS MA CS所属系名SD 男女女男性别SEX A B E FS1S2S5S6学生姓名SN 学号S#202122学生年龄AGE CS CS CS所属系名SD 男女男性别SEX A B FS1S2S6学生姓名SN 学号S#202119192022学生年龄AGE CS CS MA CI MA CS所属系名SD 男女女男女男性别SEX A B C D E FS1S2S3S4S5S6学生姓名SN 学号S#SS例1, 求计算机系CS 的学生.SD=CS(S例2, 求年龄大于或等于20的学生.AGE 20(S 202119192022学生年龄AGE CS CS MA CI MA CS所属系名SD 男女女男女男性别SEX A B C D E FS1S2S3S4S5S6学生姓名SN 学号S#2022学生年龄AGE CS CS所属系名SD 男男性别SEX A FS1S6学生姓名SN 学号S#S课堂练习找计算机系年龄不小于30或者不大于20的男学生.答案SD=CS(AGE 30 AGE 20 SEX=男(S例3, 找年龄不小于20的男学生.AGE 20 SEX=男(S 202119192022学生年龄AGE CS CS MA CI MA CS所属系名SD 男女女男女男

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2