1、l关系数据结构及其形式化定义l关系的完整性l关系代数l关系演算3. 关系数据库关系数据库 数据库原理与应用1运算符运算符含义含义运算符运算符含义含义集合运算符并比较运算符大于大于等于-差小于交小于等于=等于笛卡尔积不等于专门的关系运算符选择逻辑运算符非投影与连接或除关系代数运算符关系代数运算符数据库原理与应用2l是二元运算l并、差、交、积l对于并、交、差运算,一般参与运算的两个关系,他们的关系模式相同l以下假设参与运算的两个关系分别为R和S传统集合运算传统集合运算数据库原理与应用3l选择、投影、连接、除l几个引入的记号l分量记号l属性子集l元组的连接或串接l像集专门的关系运算专门的关系运算数据
2、库原理与应用4设 关系模式R(A1,A2,An),R为该关系模式下的关系。t R表示t是R的一个元组;tAi表示元组t在属性Ai上的分量若A=Ai1,Ai2,Aik为集合A1,A2 ,An的子集,则A称为属性列属性列或属性组属性组 tA = ( tAi1, tAi2, tAik ) A = A1,A2 ,An - A记号约定记号约定数据库原理与应用5R为n目关系,S为m目关系,trR, ts S, trts为元组的连接连接(Concatenation) 给定一个关系R(X,Z), X和Z为属性列,当tX=x时,x在R中的象集象集(Image set)定义为Zx= tZ | tR, tX =x记
3、号约定记号约定数据库原理与应用6l选择 Selection l投影 Projection l连接 Join l一般连接l自然连接l外连接l除 Division 专门的关系运算专门的关系运算数据库原理与应用7l选择又称限制l在R中选取满足指定条件的元组lF(R)=t|tRF(t)=真l是从行的角度进行运算lF代表对属性的比较运算或者其组合,是一个逻辑函数选择选择数据库原理与应用8l投影是从R中选择出若干属性组成新关系l A(R) = tA | t R l投影是从列的角度进行的运算lA代表R中属性集合的子集投影投影数据库原理与应用9l关系数据结构及其形式化定义l关系的完整性l关系代数l传统集合运算
4、l专用关系运算l选择l投影l连接l除l关系演算4. 关系数据库关系数据库 数据库原理与应用10l连接运算是将两个有联系的关系横向连接在一起l连接运算的结果是一个拥有参与运算的两个关系全部属性的关系l连接运算和笛卡尔积有一定的关系l可以理解成笛卡尔积后再进行选择连接运算连接运算数据库原理与应用11姓名姓名性别性别年龄年龄导师导师郭靖男19柯镇恶黄蓉女16洪七公梅超风女30黄药师陈玄风男32黄药师欧阳修男48NULL例子:关系例子:关系“学生学生”、“老师老师”数据库原理与应用12姓名姓名年龄年龄黄药师49欧阳锋47洪七公53柯镇恶36l连接又称连接,从笛卡尔积中选择符合条件AB的元组l当操作为“
5、=”时,称为等值连接连接:等值连接连接:等值连接数据库原理与应用13l学生导师=姓名老师例例1:题目和运算:题目和运算数据库原理与应用14姓名姓名性别性别年龄年龄导师导师郭靖男19柯镇恶黄蓉女16洪七公梅超风女30黄药师陈玄风男32黄药师欧阳修男48NULL姓名姓名年龄年龄黄药师49欧阳锋47洪七公53柯镇恶36学生学生.姓名姓名学生学生.性别性别学生学生.年龄年龄学生学生.导师导师老师老师.姓名姓名老师老师.年龄年龄郭靖男19柯镇恶柯镇恶36黄蓉女16洪七公洪七公53梅超风女30黄药师黄药师49陈玄风男32黄药师黄药师49例例1:结果:结果数据库原理与应用15l对于连接运算,不一定要等值连接
6、l如前例l学生年龄年龄/2老师l这是一个典型的一般连接,并且连接的时候对某个属性进行了计算转换l非等值的一般连接很少用!连接:一般连接连接:一般连接数据库原理与应用16l自然连接是一种特殊的等值连接l要求连接的双方属性名相同,并且二者连接后仅保留一个l将例1中的属性名适当调整,即成自然连接l在大部分数据库设计中,主码和外码之间就是自然连接自然连接自然连接数据库原理与应用17lR和S的连接属性都是主码lR和S是一对参照、被参照关系,连接属性是外码(主码)l连接属性不是双方的主码连接双方的关系连接双方的关系数据库原理与应用18l找出下面两组主机之间,可以直接通信的主机例例2数据库原理与应用19主机
7、名主机名网络号网络号张飞210.34.36.0/24关羽211.80.136.128/25夏侯淳211.80.136.128/25司马懿202.101.0.0/17主机名主机名网络号网络号刘备210.34.36.0/24孙权211.80.136.128/25曹操211.80.136.128/25刘德华202.101.0.0/18l之前的连接都有要求,即部分在对方关系中找不到匹配信息的元组会被忽略l当保留这部分不配对的元组时,称为外连接l根据保留的方向,分为外连接(全外连接)、左外连接、右外连接等l没有配对信息的位置,填写空值(NULL)外连接外连接数据库原理与应用20l对例1中的运算,分别采用
8、外连接、左外连接、右外连接进行例例3数据库原理与应用21l图书|出版社作者课堂练习课堂练习数据库原理与应用22书名书名定价定价出版社出版社C+入门28.00电子工业出版社数据库原理45.00高等教育出版社网络安全与攻防23.00电子工业出版社数据结构与算法65.00高等教育出版社算法珠玑38.00清华大学出版社姓名姓名地区地区出版社出版社范铭杭州电子工业出版社张泉风西安高等教育出版社刘时东北京电子工业出版社李兆光上海机械工业出版社l除运算可以视为笛卡尔积的逆运算l类似算术上的除法与乘法的关系l给定关系R(X, Y)与S(Y, Z),RS得到一个新的关系P(X)。P是R中满足下列条件的元组在X属
9、性上的投影:元组在X上的分量x的像集Yx包含S在Y上的投影的集合。记作:lRS=trX|trRY(S)Yx除除数据库原理与应用23l先找出被除关系S在Y上的投影l然后对R在X上的投影,逐个求出其像集,将像集与S在Y上的投影进行比较除运算的做法除运算的做法数据库原理与应用24l找出同时选修了课程书法和论语的学生例例4数据库原理与应用25学号学号姓名姓名性别性别12101刘丰男12102张希女12103马燕女12104王欢男学号学号课程课程12101书法12103论语12101高尔夫12101论语12103书法12104书法12102论语12104高尔夫l关系演算是以数理逻辑中的谓词演算为基础的l按照谓词变元的不同,分为元组关系演算和域关系演算l有一整套的关系演算语言关系演算关系演算数据库原理与应用26l关系数据结构及其形式化定义l关系的完整性l关系代数l传统集合运算l专用关系运算l选择l投影l连接l除l关系演算4. 关系数据库关系数据库 数据库原理与应用27l课本74页习题5,用关系代数表达即可l注意:下次课收齐上交课后书面作业课后书面作业数据库原理与应用28l关系数据库标准语言SQLlSQL 的产生与发展l数据库工具SQL Server的使用(企业管理器)l数据定义语言l数据查询l数据更新l视图预习预习数据库原理与应用29