数据库关系数据库

上传人:宝路 文档编号:47969288 上传时间:2018-07-07 格式:PPT 页数:131 大小:2.91MB
返回 下载 相关 举报
数据库关系数据库_第1页
第1页 / 共131页
数据库关系数据库_第2页
第2页 / 共131页
数据库关系数据库_第3页
第3页 / 共131页
数据库关系数据库_第4页
第4页 / 共131页
数据库关系数据库_第5页
第5页 / 共131页
点击查看更多>>
资源描述

《数据库关系数据库》由会员分享,可在线阅读,更多相关《数据库关系数据库(131页珍藏版)》请在金锄头文库上搜索。

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

2、用系统uORACLEuSYBASEuINFORMIXuDB2uINGRES*兰彬制作4国产支柱型关系数据库管理系统:东软集 团有限公司的OpenBase、人大金仓的 Kingbase ES、武汉达梦公司的DM4和 中国航天科技集团公司OSCAR*兰彬制作5第二章 关系数据库2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数*兰彬制作62.1 关系模型概述|关系数据库系统是支持关系模型 的数据库系统|关系模型的三大组成部分u关系数据结构u关系操作集合u关系完整性约束*兰彬制作71. 关系模型的数据结构|单一的数据结构-关系u现实世界的实体以及实体间的各种联系均 用

3、关系来表示|数据的逻辑结构-二维表u从用户角度,关系模型中数据的逻辑结构 是一张二维表。 *兰彬制作8*8二维表学号姓名性别年龄 2005060201张三男19 2005090402王青女20 2004070403李四男19表2-1学生基本情况表表有表名表由表头和若干行数据组成表有若干列,每列都有列名,同一列的取值范围相同记录*兰彬制作92. 关系操作集合1) 关系操作的种类 2) 关系操作的特点 3) 关系数据语言的种类 4) 关系数据语言的特点*兰彬制作10关系操作集合(续)1) 常用的关系操作u数据查询选择、投影、连接、除、并、交、差u数据更新插入、删除、修改*兰彬制作11关系操作集合(

4、续)2) 关系操作的特点u集合操作方式,即操作的对象和结 果都是集合。关系模型操作的方式:一次一集合非关系模型操作的方式:一次一记录*兰彬制作12关系操作集合(续)关 系 数 据 语 言关系代数语言例如ISBL关系演算语言具有关系代数和关系演算语言 双重特点的语言,例如SQL元组关系演算语言例如ALPHA, QUEL域关系演算语言例如QBE3)关系数据语言的种类*兰彬制作13关系操作集合(续)4) 关系数据语言的特点u关系语言是一种高度非过程化的语言u具备完备的表达能力,功能强u能够嵌入高级语言中使用*兰彬制作143. 关系的三类完整性约束|实体完整性|参照完整性u这2种完整性通常由关系系统自

5、动支持|用户定义的完整性u反映应用领域需要遵循的约束条件, 体现了具体领域中的语义约束u用户定义后由系统支持*兰彬制作15第二章 关系数据库2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数*兰彬制作162.2 关系数据结构|关系模型建立在集合代数的基础上|关系数据结构的基本概念u关系u关系模式u关系数据库*兰彬制作172.2 关系数据结构|2.2.1 关系|2.2.2 关系模式|2.2.3 关系数据库*兰彬制作182.2 关系数据结构|2.2.1 关系|2.2.2 关系模式|2.2.3 关系数据库*兰彬制作192.2.1 关系| 域(Domain)| 2. 笛

6、卡尔积(Cartesian Product)| 3. 关系(Relation)*兰彬制作20 域(Domain)域:例:整数 实数 大于 0 并且小于 100 的正整数所有同学的名字 男,女是一组具有相同数据类型的值的集合。数字、字符 及其子集。*兰彬制作212. 笛卡尔积(Cartesian Product)笛卡尔积: 给定一组域 D1,D2,Dn,这些域中 可以有相同的。D1,D2,Dn的笛卡尔 积为:D1D2Dn(d1,d2,dn) diDi,i1,2,n域的积分量*兰彬制作22笛卡尔积 例1|有3个域,A(a1,a2),B(b1,b2, b3),C(c1,c2),则A,B,C的笛卡儿积

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

8、张清玫,计算机专业, 刘晨),(张清玫,计算机专业, 王敏),(张清玫, 信息专业, 李勇), (张清玫,信息专业,刘晨),(张清玫,信息专业,王敏), (刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),(刘逸,计算机专业,王敏),(刘逸,信息专业,李勇), (刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) *兰彬制作24笛卡尔积(续)笛卡尔积的表示方法u二维表u表中的每行对应一个元组,每列对应一 个域。在例2 中,12个元组可列成一张二维表 *兰彬制作25*兰彬制作263. 关系(Relation)1) 关系D1D2Dn的子集叫作在域D1,D2,Dn 上的关系,表示为R(D1,D2,

9、Dn) R:关系名; n:关系的目或度(Degree)例如:D1 = 导师 = 张清玫,刘逸D2 = 专业 = 计算机专业,信息专业 D3 = 研究生= 李勇,刘晨,王敏 则 SAP(导师, 专业, 研究生)就是一个关系*兰彬制作27导 师 专 业研究生姓名张清玫 信息专业 李 勇张清玫 信息专业 刘 晨刘 逸信息专业 王 敏有意义的关系及其值:研究生学号100110021003候选码主码*兰彬制作28码|超码能唯一标识实体的属性或属性组称作超码|超码的任意超集也是超码 |候选码(Candidate Key)u关系中的一个属性组,其值能唯一标识一个元组 。若从属性组中去掉任何一个属性,它就不具

10、有这 一性质了,这样的属性组称作候选码u任何一个候选码中的属性称作主属性主属性 |主码(Primary Key)u进行数据库设计时,从一个关系的多个候选码中 选定一个作为主码 |外部码(Foreign Key)u关系R中的一个属性组,它不是R的码,但它与另 一个关系S的码相对应,则称这个属性组为R的外 部码*兰彬制作29关系(续)2) 关系的表示关系也是一个二维表,表的每行对应一个元 组,表的每列对应一个域(属性)。*兰彬制作30关系(续)3) 三类关系基本关系(基本表或基表): 实际存在的表,是实际存储数据的逻辑表示 查询表: 查询结果对应的表 视图表:由基本表或其他视图表导出的表, 是虚表

11、,不对应实际存储的数据*兰彬制作314)对关系的几点说明笛卡尔积不满足交换律,即(d1,d2,dn )(d2,d1,dn )但关系满足交换律,即(d1,d2, ,di,dj ,,dn)=(d1, d2, , dj ,di ,dn)(i,j = 1,2,n)例如 :(学号,姓名,性别,年龄)(学号,姓名 ,年龄,性别)*兰彬制作324)对关系的几点说明关系可以是一个无限集合但无限关系在数据库系统中是无意义的因此,数据库中的关系必须是 有限集合。 *兰彬制作335) 基本关系的性质 列是同质的(Homogeneous) 不同的列可出自同一个域 列的顺序无所谓 任意两个元组不能完全相同 行的顺序无所

12、谓 分量必须取原子值*兰彬制作342.2 关系数据结构2.2.1 关系2.2.2 关系模式2.2.3 关系数据库*兰彬制作352.2.2 关系模式1什么是关系模式2定义关系模式3. 关系模式与关系*兰彬制作361什么是关系模式F关系模式 是 型F关系 是 值F关系模式是对关系的描述*兰彬制作372定义关系模式关系模式可以形式化地表示为:R(U,D,dom,F)R 关系名 U 组成该关系的属性名集合 D 属性组 U 中属性所来自的域 dom 属性向域的映象集合 F 属性间的数据依赖关系集合*兰彬制作38定义关系模式 (续)例:uD1人(张清玫, 刘逸, 李勇, 刘 晨, 王 敏) uD2专业(计

13、算机专业,信息专业)R(导师,专业,研究生,人,专业, 导师人,研究生人,专业专业,F)关系模式的表示如下:*兰彬制作39定义关系模式 (续)关系模式通常可以简记为R (U) 或 R (A1,A2,An)R: 关系名 A1,A2,An : 属性名注:域名及属性向域的映象常常直接说明为属性的类型、长度学号:定义为 8位整数*兰彬制作403. 关系模式与关系u关系模式 对关系的描述,静态的、稳定的u关系是关系模式在某一时刻的状态或内容,是 数据库中数据的具体值,是动态的、随时 间不断变化的u关系模式和关系往往统称为关系*兰彬制作412.2 关系数据结构2.2.1 关系2.2.2 关系模式2.2.3

14、 关系数据库*兰彬制作422.2.3 关系数据库关系数据库的定义:u在一个给定的应用领域中,所有实体及 实体之间联系的 关系的集合 构成一个关 系数据库。关系数据库模式:u关系数据库的型称为关系数据库模式, 是对关系数据库的描述关系数据库的值:u是指数据库中在某一时刻对应的关系的 集合*兰彬制作43第二章 关系数据库2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数*兰彬制作442.3 关系的完整性关系模型的完整性规则:是对关系的某种约束条件。关系模型中三类完整性约束:实体完整性参照完整性用户定义的完整性*兰彬制作452.3.1 实体完整性规则2.1 若属性 A

15、 是基本关系 R 的主属性,则属性 A 不能取空值例:学生(学号,姓名,系别)课程(课程号,课程名,学分) 选课(学号,课程号,成绩)*兰彬制作46实体完整性(续)关系模型必须遵守实体完整性规则的原因:(1) 实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。(2) 现实世界中的实体和实体间的联系都是可区分的,即它们具有某种唯一性标识。(3)相应地, 关系模型中以主码作为唯一性标识。 (4) 主码中的属性即主属性不能取空值。*兰彬制作472.3.2 参照完整性1. 关系间的引用2. 外码3. 参照完整性规则*兰彬制作48 *48关系间的引用引用例1 学生实体、专业实体以及专业与学生间的一对多联系学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)学生关系中属性“专业号”要参照专业关系中属性的值。例2 学生、课程及学生与课程之间的多对多联系学生(学号,姓名,性别,专业号,年龄)课程(课程号,课程名,学分)选修(学号,课程号,成绩)*兰彬制作49*兰彬制作50学生学生选课 课程*兰彬制作51关系间的引用(续)例 3 学生实体表示如下: 学生(学号, 姓名, 性别, 专业号, 年龄, 班长)*兰彬制作52 *52外码(Foreign Key)设F是基本关系R的一个或一组属性,但不是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号