资源预览内容
第1页 / 共70页
第2页 / 共70页
第3页 / 共70页
第4页 / 共70页
第5页 / 共70页
第6页 / 共70页
第7页 / 共70页
第8页 / 共70页
第9页 / 共70页
第10页 / 共70页
亲,该文档总共70页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
武汉大学计算机学院数据库课程组2.1 关系模型2.2 关系代数2.3 关系演算2.4 数据库标准语言SQL第2章 关系数据库武汉大学计算机学院数据库课程组 2.1 关系模型1.关系模型的特点及组成特点:n结构简单,表达力强 n语言的一体化 n非过程化的操作 n坚实的数学基础 n操作效率较低 组成:n关系数据结构n关系数据操作n关系完整性约束 n关系DB系统是支持关系模型的DB系统武汉大学计算机学院数据库课程组 2.1 关系模型n2、关系数据结构n1)域:是一组具有相同数据类型的值的集合。2)笛卡尔积给定一组域 D1,Dn(可有相同的域)。其笛卡尔积为:DlXD2XXDn=(d1,d2,dn)| diDi,i=1,2,n例:姓名集D1=a,b,c性别集D2=0,1D1XD2:D1 D2 a 0 b 0 c 0 a 1 b 1 c 1姓名 性别c 0 a 1 b 1武汉大学计算机学院数据库课程组 2.1 关系模型n3)关系笛卡尔积的有限子集称作对应域上的关系。关系:是元组的集合。 R(D1,D2, ,Dn)R 是 n 元 ( 目 ) 关 系n4)术语:候 选 键主 键 、 主 属 性非 主 属 性外 键 ( 外 来 关 键 字 )外键提供了一种表示两个关系联系的方法 。nS(Sno,Cardno,Sname,Sage)nSC(Sno,Cno,Grade)候选键主键两个主属性非主属性9801019598010280980201889802 03 929803 02Sno Cno Grade 80 武汉大学计算机学院数据库课程组 2.1 关系模型n5)关系的性质: (1)每列的值为同一类型。 (2)每列具有不同的属性名 (3)任意两元组不能完全相同。 (4)行的次序可以互换。 (5)列的次序可以互换。 (6)分量值是原子的。 +5?学号 姓名 年龄 ; 网虫?不允许元组分量值属性名n关系的类型 : 基本关系 查询表 视图表职 工工资 基本奖金. 武汉大学计算机学院数据库课程组 2.1 关系模型6)关系模式与关系数据库 n关系模式:是关系结构的描述和定义,即二维表的表结构定义。n关系实质上是一张二维表。n因此,关系模式必须指出表的结构,即它由哪些属性构成,这些 属性来自哪些域,以及属性与域之间的对应关系。n关系模式简记为关系的属性名表: nR(U)=R(A1 ,A2,A3,.An) n例:学生(学号,姓名,总成绩)n关系数据库:对应关系模型的一个应用领域的全部关系的集合。n联系?武汉大学计算机学院数据库课程组 2.1 关系模型n3. 关系模型的数据操作 n关系模型中常用的关系数据操作有四种:n(1)数据查询。基本操作有:关系属性的指定;关系元组的选择 ;两个关系的合并。n(2)数据插入。在关系内插入一些新元组。n(3)数据删除。在关系内删除一些元组。n(4)数据修改。修改关系元组的内容。可分解为:先删除要改的 元组,再插入新元组。n关系数据操作是一种集合式操作。复杂的关系数据操作可通过基 本的关系数据运算获得。此外,还需要有关系的操作规则及具体的 关系数据语言来实现这些操作。n关系数据语言可分为研究用的抽象语言和可使用的实现语言。关 系数据语言大体分成三类,如表2-3。 武汉大学计算机学院数据库课程组2.1 关系模型4. 关系的完整性n三类完整性约束:n实 体 完 整 性参 照 完 整 性用 户 定 义 的 完 整 性n说明:n(1)该规则是对基本关系的约束 和限定。n(2)实体有唯一性标识主键。n(3)主键上的属性不能取空值。n1)实体完整性n实体完整性规则 :n若属性A是基本关系R的主码 属性,则属性A不能取空值。由关系系统自动支持是应用领域需要遵循的约束条件武汉大学计算机学院数据库课程组 2.1 关系模型n2)参照完整性n引用关系:v关系中的某属性的值需要参照另一关系的属性来取值。n例1:学生(学号,姓名,性别,专业号,年龄)n 专业(专业号,专业名)n例2: 学生(学号,姓名,性别,专业号,年龄,合作者号)引用引用武汉大学计算机学院数据库课程组 2.1 关系模型设:基本关系R、S(可为同一关系)。若F是R的一个(组)属性,但不是R的键。如果F与S的主键K相对应,则称F是R的外键。n例:学生(学号,姓名,性别,专业号,年龄)n 专业(专业号,专业名)引用 目标关系参照关系外键说明:S的主键K和R的外键F必须定义在同一个(组)域上 R为参照关系,S为目标关系。武汉大学计算机学院数据库课程组 2.1 关系模型参照完整性规则 若属性(组) F是R的外键它与S的主键K相对应,则对于R中每个元组在F上的值必为下列之一: (1)取空值(F的每个属性值均为空); (2)等于S中某个元组的主键值。例:学生(学号,专业号,姓名,.)关系中每个元组的专业号取值: (1)空值(未知值); (2)非空值。3)用户定义的完整性反映具体应用所涉及的数据应满足的语义要求、约束条件。例:学生关系中的年龄在1545之间,选修关系中的成绩在 0100之间。 定义了外键与主键之间 的引用规则。 指外键不能引用不存在 的主键值。武汉大学计算机学院数据库课程组 2.2 关系代数关系数据语言分类: 1)关系代数 2)关系演算 元 组 关 系 演 算 域 关 系 演 算 3)具有双重特点的语言(SQL)共同特点是:具 完 备 的 表 达 能 力是 非 过 程 化 的 集 合 操 作 语 言功 能 强可 嵌 入 、 又 可 独 立 使 用武汉大学计算机学院数据库课程组 2.2 关系代数n关系代数是一种抽象的查询语言。它以关系为运算对象,通过 对关系进行“组合”或“分割”,得到所需的数据集合关系。n分类:集合运算(并、交、差;广义笛卡尔积)关系运算及其扩充n一、 集合运算n设:t 为元组变量;R、S为同类(相同元、相应属性同域) 关系;下列运算结果为同类关系:n1.并运算: RUS =t |(tR)(t S)n2.差运算: RS=t |(tR)(t S) n3.交运算: RS=t |(tR)(t S)RS= R(RS)武汉大学计算机学院数据库课程组 2.2 关系代数R1 - R2A1 A2 A3 b 3 b d 3 b R2 A1 A2 A3 a 3 c b 2 dc 2 d e 5 f g 6 f R1 A1 A2 A3 b 2 d b 3 b c 2 d d 3 b n集合运算示例R1 R2 A1 A2 A3 b 2 d c 2 dR1 R2 A1 A2 A3 b 2 d b 3 b c 2 d d 3 b a 3 c e 5 f g 6 f 武汉大学计算机学院数据库课程组 2.2 关系代数n4.广义笛卡尔积:n设:R、S为不同类关系,则结果为不同类关系:nRS=tr ts|(trR)(ts S)连接为 m+n元关系 n元关系 m元关系 RSR .A1 R .A2 R .A3 S .A2 S .A3b 2 d 2 db 2 d 3 b b 3 b 2 d b 3 b 3 b c 2 d 2 d c 2 d 3 b d 3 b 2 d d 3 b 3 b S A2 A3 2 d 3 b R A1 A2 A3 b 2 d b 3 b c 2 d d 3 b 武汉大学计算机学院数据库课程组 2.2 关系代数n记号:设t为R的元组变量n设:R(A1,A2,An)=R(U) tAi (Ai为属性) tA (A为属性集) 例:t 学号 -R中学号上的值t 学号,姓名 学号 姓名 年龄 t武汉大学计算机学院数据库课程组 2.2 关系代数n二、关系运算n1. 选择 () :n是关系行上的选择,产生同类关系。F(R)=t |(tR) F( t )=truen含义:由R中满足F条件的元组组成。n其中:F由属性名(值)、比较符、逻辑 运算符组成。n例: Sage19(Student)n例: A25 A3 “f”(R)R A1 A2 A3 a 3 fb 2 dc 2 d e 6 f g 6 f A25 A3“f” (R) A1 A2 A3 b 2 dc 2 de 6 fg 6 f武汉大学计算机学院数据库课程组 2.2 关系代数n2. 投影运算():n是关系列的选择,产生不同类关系n A(R)=tA |(tR) n含义:R中取属性名表A中指定的列,消除重复元组。n例: Sno,Cno(SC)n用关系代数表示查询:n例:查选2号课程的学生记录。n例: 成绩在90分以上的学生号。A3 A2 f 3d 2f 63,2AA(R )98011959801290980218898023 929803 2Sno Cno Grade 80SC表R A1 A2 A3 a 3 fb 2 dc 2 d e 6 f g 6 f 解: Cno=2(SC)解: Sno(Grade90(SC)武汉大学计算机学院数据库课程组2.2 关系代数n3. 连接运算:连接也称为连接。它从两个关系的笛卡尔积中选 取属性间满足一定条件的元组。nR S=tr ts|(trR)(ts S) trA tsBAB 比较运算符n大于连接:为“”的连接。n等值连接:为“=”的连接。 nR S= R. A = S. B(RS)A=B例:= R. A S. B(RS) 含义:从R S中选取R关系在A属性组上的值与S关系在B属性 组上
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号