二章关系数据库.ppt

上传人:本田雅阁 文档编号:2506618 上传时间:2019-04-04 格式:PPT 页数:57 大小:572.01KB
返回 下载 相关 举报
二章关系数据库.ppt_第1页
第1页 / 共57页
二章关系数据库.ppt_第2页
第2页 / 共57页
二章关系数据库.ppt_第3页
第3页 / 共57页
亲,该文档总共57页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《二章关系数据库.ppt》由会员分享,可在线阅读,更多相关《二章关系数据库.ppt(57页珍藏版)》请在三一文库上搜索。

1、第二章 关系数据库,2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数 2.5 关系演算 2.6 小结,关系数据库简介,1970年,美国IBM公司的E.F.Codd提出关系数据模型 之后,提出了关系代数和关系演算的概念 1971-1972年,E.F.Codd提出了关系的第一、第二、第三范式 1974年,E.F.Codd提出了关系的BC范式 1976年,Fagin提出了第四范式,后来又有人提出第五范式 80年代后,关系数据库系统成为最重要、最流行的数据库系统,关系数据库的典型实例,典型实验系统 System R University INGRES 典型商用系统 O

2、RACLE SYBASE INFORMIX DB2 INGRES,第二章 关系数据库,2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数 2.5 关系演算 2.6 小结,2.1 关系模型概述,关系数据库系统是支持关系模型的数据库系统 关系模型的三大组成部分 关系数据结构 关系操作集合 关系完整性约束,1. 关系模型的数据结构,单一的数据结构-关系 现实世界的实体以及实体间的各种联系均用关系来表示 数据的逻辑结构-二维表 从用户角度,关系模型中数据的逻辑结构是一张二维表。,2. 关系操作集合,1) 关系操作的种类 2) 关系操作的特点 3) 关系数据语言的种类 4

3、) 关系数据语言的特点,关系操作集合(续),1) 常用的关系操作 数据查询 选择、投影、连接、除、并、交、差 数据更新 插入、删除、修改,关系操作集合(续),2) 关系操作的特点 集合操作方式,即操作的对象和结果都是集合。 关系模型操作的方式:一次一集合 非关系模型操作的方式:一次一记录,关系操作集合(续),3)关系数据语言的种类,关系操作集合(续),4) 关系数据语言的特点 关系语言是一种高度非过程化的语言 具备完备的表达能力,功能强 能够嵌入高级语言中使用,3. 关系的三类完整性约束,实体完整性 参照完整性 这2种完整性通常由关系系统自动支持 用户定义的完整性 反映应用领域需要遵循的约束条

4、件,体现了具体领域中的语义约束 用户定义后由系统支持,第二章 关系数据库,2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数 2.5 关系演算 2.6 小结,2.2 关系数据结构,关系模型建立在集合代数的基础上 关系数据结构的基本概念 关系 关系模式 关系数据库,2.2 关系数据结构,2.2.1 关系 2.2.2 关系模式 2.2.3 关系数据库,2.2 关系数据结构,2.2.1 关系 2.2.2 关系模式 2.2.3 关系数据库,2.2.1 关系, 域(Domain) 2. 笛卡尔积(Cartesian Product) 3. 关系(Relation), 域(

5、Domain),域: 例: 整数 实数 大于 0 并且小于 100 的正整数 所有同学的名字 男,女,是一组具有相同数据类型的值的集合。,2. 笛卡尔积(Cartesian Product),笛卡尔积: 给定一组域 D1,D2,Dn,这些域中可以有相同的。D1,D2,Dn的笛卡尔积为: D1D2Dn(d1,d2,dn)diDi,i1,2,n,笛卡尔积 例1,有3个域,A(a1,a2),B(b1,b2,b3),C(c1,c2), 则A,B,C的笛卡儿积为: ABC ( a1,b1,c1),(a1 ,b1,c2), (a1 ,b2, c1),(a1 ,b2 c2), (a1 ,b3, c1),(a

6、1 ,b3,c2), ( a2,b1, c1),(a2 ,b1,c2), (a2 ,b2, c1),(a2 ,b2,c2), (a2 ,b3, c1),(a2 ,b3,c2) ,元 组 分 量 基 数,笛卡尔积 例2,有3个域: D1 = SUPERVISOR = 张清玫,刘逸 , D2 = SPECIALITY = 计算机专业,信息专业, D3 = POSTGRADUATE = 李勇,刘晨,王敏 则 D1D2D3 (张清玫, 计算机专业, 李勇), (张清玫,计算机专业, 刘晨), (张清玫,计算机专业, 王敏),(张清玫, 信息专业, 李勇), (张清玫,信息专业,刘晨),(张清玫,信息专

7、业,王敏), (刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨), (刘逸,计算机专业,王敏),(刘逸,信息专业,李勇), (刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) ,笛卡尔积(续),笛卡尔积的表示方法 二维表 表中的每行对应一个元组,每列对应一个域。 在例2 中,12个元组可列成一张二维表,3. 关系(Relation),1) 关系 D1D2Dn的子集叫作在域D1,D2,Dn上的关系,表示为 R(D1,D2,Dn) R:关系名; n:关系的目或度(Degree),例如:D1 = 导师 = 张清玫,刘逸 D2 = 专业 = 计算机专业,信息专业 D3 = 研究生= 李勇,刘晨,王

8、敏 则 SAP(导师, 专业, 研究生)就是一个关系,有意义的关系及其值:,候选码,主码,关系(续),2) 关系的表示 关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域(属性)。,关系(续),3) 三类关系 基本关系(基本表或基表): 实际存在的表,是实际存储数据的逻辑表示 查询表: 查询结果对应的表 视图表:由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据,4)对关系的几点说明,笛卡尔积不满足交换律,即 (d1,d2,dn )(d2,d1,dn ) 但关系满足交换律,即 (d1,d2, ,di,dj ,,dn)=(d1, d2, ,dj ,di ,dn)(i,j = 1

9、,2,n) 例如 : (学号,姓名,性别,年龄)(学号,姓名,年龄,性别),4)对关系的几点说明,关系可以是一个无限集合 但无限关系在数据库系统中是无意义的 因此,数据库中的关系必须是 有限集合。,5) 基本关系的性质, 列是同质的(Homogeneous) 不同的列可出自同一个域 列的顺序无所谓 任意两个元组不能完全相同 行的顺序无所谓 分量必须取原子值,2.2 关系数据结构,2.2.1 关系 2.2.2 关系模式 2.2.3 关系数据库,2.2.2 关系模式,1什么是关系模式 2定义关系模式 3. 关系模式与关系,1什么是关系模式,关系模式 是 型 关系 是 值 关系模式是对关系的描述,2

10、定义关系模式,关系模式可以形式化地表示为: R(U,D,dom,F) R 关系名 U 组成该关系的属性名集合 D 属性组 U 中属性所来自的域 dom 属性向域的映象集合 F 属性间的数据依赖关系集合,定义关系模式 (续),例: D1人(张清玫, 刘逸, 李勇, 刘 晨, 王 敏) D2专业(计算机专业,信息专业),R(导师,专业,研究生,人,专业,导师人,研究生人,专业专业,F),关系模式的表示如下:,定义关系模式 (续),关系模式通常可以简记为 R (U) 或 R (A1,A2,An) R: 关系名 A1,A2,An : 属性名 注:域名及属性向域的映象常常直接说明为 属性的类型、长度,学

11、号:定义为 8位整数,3. 关系模式与关系,关系模式 对关系的描述,静态的、稳定的 关系 是关系模式在某一时刻的状态或内容,是数据库中数据的具体值,是动态的、随时间不断变化的 关系模式和关系往往统称为关系,2.2 关系数据结构,2.2.1 关系 2.2.2 关系模式 2.2.3 关系数据库,2.2.3 关系数据库,关系数据库的定义: 在一个给定的应用领域中,所有实体及实体之间联系的 关系的集合 构成一个关系数据库。 关系数据库模式: 关系数据库的型称为关系数据库模式,是对关系数据库的描述 关系数据库的值: 是指数据库中在某一时刻对应的关系的集合,第二章 关系数据库,2.1 关系模型概述 2.2

12、 关系数据结构 2.3 关系的完整性 2.4 关系代数 2.5 关系演算 2.6 小结,2.3 关系的完整性,关系模型的完整性规则: 是对关系的某种约束条件。 关系模型中三类完整性约束: 实体完整性 参照完整性 用户定义的完整性,2.3.1 实体完整性,规则2.1 若属性 A 是基本关系 R 的主属性,则属性 A 不能取空值 例: 学生(学号,姓名,系别) 课程(课程号,课程名,学分) 选课(学号,课程号,成绩),实体完整性(续),关系模型必须遵守实体完整性规则的原因: (1) 实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。 (2) 现实世界中的实体和实体间的联系

13、都是可区分的,即它们具有某种唯一性标识。 (3)相应地, 关系模型中以主码作为唯一性标识。 (4) 主码中的属性即主属性不能取空值。,2.3.2 参照完整性,1. 关系间的引用 2. 外码 3. 参照完整性规则,关系间的引用,例 1 学生实体、专业实体的关系表示如下: 学 生(学号,姓名,性别,专业号,年龄) 专 业(专业号,专业名) 专业号 是 学生关系 的 外码。 学生关系 是 参照关系。 专业关系 是 被参照关系。,关系间的引用(续),例 2 学生、课程、选课的关系表示如下: 学生(学号,姓名,性别,专业号,年龄) 课 程(课程号,课程名,学分) 选 修(学号,课程号,成绩) 学号,课程

14、号 是 选修关系的 外码 学生关系 和 课程关系 是 被参照关系 选课关系 是 参照关系,学生,学生选课,课程,关系间的引用(续),例 3 学生实体表示如下: 学生(学号, 姓名, 性别, 专业号, 年龄, 班长),参照完整性规则,定义: 若属性(或属性组)F 是基本关系 R 的外码,它与基本关系 S 的主码 Ks 相对应(基本关系 R 和 S 不一定是不同的关系),则对于 R 中每个元组在 F 上的值必须为: 或者取空值(F 的每个属性值均为空值) 或者等于 S 中某个元组的 主码值。,参照完整性规则(续),例1 :学生关系中,每个元组的“专业号”属性只能取下面两类值: (1)空值,表示尚未

15、给该学生分配专业 (2)非空值,这时该值必须是专业关系中某个元组的“专业号”值,表示该学生不可能分配到一个不存在的专业中,参照完整性规则(续),例2 选修(学号,课程号,成绩) “学号”和“课程号”是选修关系中的主属性 按照实体完整性和参照完整性规则,它们 只能取相应被参照关系中已经存在的主码 值,关系的完整性(续),2.3.1 实体完整性 2.3.2. 参照完整性 2.3.3. 用户定义的完整性,2.3.3 用户定义的完整性,用户定义的完整性:是针对某一个具体数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。 关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不要由应用程序承担这一功能。,小结,关系模型的3个组成部分(P45-46) 关系数据结构 关系操作集合 关系完整性约束 关系数据语言的分类及其特点(P47) 理解以下概念: 域,笛卡尔积,关系,元组,属性 主码,候选码,外码 关系模式,关系,关系数据库,关系的完整性规则(P53-55) 实体完整性 参照完整性 用户定义完整性,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1