数据库原理及应用-孙浩军 第2章关系数据库基础知识

上传人:E**** 文档编号:89471553 上传时间:2019-05-25 格式:PPT 页数:93 大小:432.50KB
返回 下载 相关 举报
数据库原理及应用-孙浩军 第2章关系数据库基础知识_第1页
第1页 / 共93页
数据库原理及应用-孙浩军 第2章关系数据库基础知识_第2页
第2页 / 共93页
数据库原理及应用-孙浩军 第2章关系数据库基础知识_第3页
第3页 / 共93页
数据库原理及应用-孙浩军 第2章关系数据库基础知识_第4页
第4页 / 共93页
数据库原理及应用-孙浩军 第2章关系数据库基础知识_第5页
第5页 / 共93页
点击查看更多>>
资源描述

《数据库原理及应用-孙浩军 第2章关系数据库基础知识》由会员分享,可在线阅读,更多相关《数据库原理及应用-孙浩军 第2章关系数据库基础知识(93页珍藏版)》请在金锄头文库上搜索。

1、The Principle of Database and applications,数据库原理及应用 The Principle of Database and applications 第二章 关系数据库基础知识,The Principle of Database and applications,第二章 关系数据库基础知识,2-1 关系模型 2-2 关系的完整性 2-3 关系代数 2-4* 关系演算,The Principle of Database and applications,关系数据库简介,关系数据库是以关系模型为基础的数据库,它是应用数学理论处理数据组织的一种方法。关系数据库

2、的方法是70年代由E. F. Codd开创的。他在1970年发表的论文中解释了关系模型,定义了某些关系代数运算,研究了数据的函数相关性,定义了关系的第三范式,从而开创了数据库的关系方法和数据规范化理论的研究。关系方法的出现,大大地激发了数据库的理论研究,把它推向一个更高级的阶段。 关系数据库有严格的理论基础,用户接口简单,允许非预期询问;可用于知识库、数据库机、分布式数据库和并行数据库等领域。关系数据库目前使用非常普遍,占据统治地位。 本章首先介绍关系数据模型的基本概念及常用术语,而后详细地讨论关系运算、演算和优化算法。,The Principle of Database and applic

3、ations,2-1关系模型,关系数据库中的型也称为关系数据库模式,是关系数据库结构的描述。它包括若干域的定义,以及在这些域上定义的若干关系模式。实际上,关系的概念对应于程序设计语言中变量的概念,而关系模式对应于程序设计语言中类型定义的概念。关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常称之为关系数据库 关系模型中,数据是以二维表的形式存在的,这个二维表就叫做关系,这是一种非形式化的定义。这里,我们用集合代数给出“关系”的形式化定义,The Principle of Database and applications,2-1关系数据结构及形式化定义,关系模型建立在集合代数的基础上

4、 关系数据结构的基本概念 关系 关系模式 关系数据库,The Principle of Database and applications,2-1.1 关系模型的基本术语, 域(Domain) 2. 笛卡尔积(Cartesian Product) 3. 关系(Relation),The Principle of Database and applications, 域(Domain),域是一组具有相同数据类型的值的集合。例: 整数 实数 介于某个取值范围的整数 长度指定长度的字符串集合 男,女 介于某个取值范围的日期,The Principle of Database and applicat

5、ions,2. 笛卡尔积(Cartesian Product),1) 笛卡尔积 给定一组域D1,D2,Dn,这些域中可以有相同的。D1,D2,Dn的笛卡尔积为: D1D2Dn(d1,d2,dn)diDi,i1,2,n 所有域的所有取值的一个组合 不能重复,The Principle of Database and applications,笛卡尔积(续),例. 设有域D1=数据库,操作系统为课程名集合, D2张三,李四为教师的集合, D3=72,60为课时数得集合, 则D1,D2,D3的笛卡尔积为: D1D2D3=(数据库,张三,72), (数据库,张三,60),(数据库,李四,72), (数

6、据库,李四,60),(操作系统,张三,72), (操作系统,张三,60),(操作系统,李四,72),(操作系统,李四,60)。,The Principle of Database and applications,笛卡尔积(续),2) 元组(Tuple) 笛卡尔积中每一个元素(d1,d2,dn)叫作一个n元组(n-tuple)或简称元组。 3) 分量(Component) 笛卡尔积元素(d1,d2,dn)中的每一个值di叫作一个分量。,The Principle of Database and applications,笛卡尔积(续),4) 基数(Cardinal number) 若Di(i1

7、,2,n)为有限集,其基数为mi(i1,2,n),则D1D2Dn的基数M为: 在上例中,基数:22312,即D1D2D3共有22312个元组,The Principle of Database and applications,笛卡尔积(续),5)笛卡尔积的表示方法 笛卡尔积可表示为一个二维表。表中的每行对应一个元组,表中的每列对应一个域。 在上例中,8个元组可列成一张二维表,The Principle of Database and applications,D1D2D3的二维表表示,The Principle of Database and applications,3. 关系(Relat

8、ion),1) 关系 D1D2Dn的子集叫作在域D1,D2,Dn上的关系,表示为 R(D1,D2,Dn) R:关系名 n:关系的目或度(Degree),The Principle of Database and applications,关系(续),注意: 关系是笛卡尔积的有限子集。无限关系在数据库系统中是无意义的。 由于笛卡尔积不满足交换律,即 (d1,d2,dn )(d2,d1,dn ) 但关系满足交换律,即 (d1,d2 ,di ,dj ,dn)=(d1,d2 ,dj,di ,dn) (i,j = 1,2,n) 解决方法:为关系的每个列附加一个属性名以取消关系元组的有序性,The Pri

9、nciple of Database and applications,关系(续),例 在表2-1 的笛卡尔积中取出有实际意义的元组来构造关系 关系:COURSE(Course,Teacher,Hour) 关系名,属性名 以下三个元组可构成一个关系 (数据库,张三,60), (操作系统,李四,72) 表见p20。,The Principle of Database and applications,关系的一组术语,关键字(Key)或码。 在关系的诸多属性中,能够用来唯一标识元组的属性(或属性组合)称为关键字或码。 在一个关系中,关键字的值不能为空。 有些关系中的关键字是由单个属性组成的,还有一

10、些关系的关键字常常是由若干个属性的组合而构成的。,The Principle of Database and applications,关系的一组术语(续),候选关键字(Candidate Key)或候选码。 如果在一个关系中,存在多个属性或属性组合都能用来唯一表示该关系的元组,这些属性或属性组合都称为该关系的候选关键字或候选码。 主关键字(Primary Key)或主码。 在一个关系的若干个候选关键字中指定作为关键字的属性或属性组合称为该关系的主关键字或主码。如在考试成绩关系中,当姓名字段的值在每次考试中都是唯一的话,则(学号,考试日期,考试科目)和(姓名,考试日期,考试科目)是该关系的两个

11、候选关键字,选择(学号,考试日期,考试科目)作为该关系的主关键字。,The Principle of Database and applications,关系的一组术语(续),非主属性(Non Primary Attribute)或非码属性。 关系中不组成码的属性均为非主属性或非码属性。 外部关键字(Foreign Key)或外键。 当关系中的某个属性或属性组虽不是该关系的关键字或只是关键字的一部分,但却是另一个关系的关键字时,称该属性或属性组合为这个关系的外部关键字或外键。例如,对学生关系,系号不是关键字,但系号是系关系的关键字,所以系号是学生关系的外部关键字或外键。 主表与从表。 主表和从

12、表是指以外键相关联的两个表,以外键作为主键的表称为主表;外键所在的表称为从表。如学生关系,对外键“系号”而言,它是从表;而系关系是主表。,The Principle of Database and applications,基本关系的性质,列是同质的(Homogeneous) 每一列中的分量是同一类型的数据,来自同一个域 不同的列可出自同一个域 其中的每一列称为一个属性,不同的属性要给予不同的属性名,The Principle of Database and applications,基本关系的性质(续),列的顺序无所谓 列的次序可以任意交换 遵循这一性质的数据库产品(如ORACLE), 增加

13、新属性时,永远是插至最后一列 但也有许多关系数据库产品没有遵循这一 性质,例如FoxPro仍然区分了属性顺序,The Principle of Database and applications,基本关系的性质(续),任意两个元组不能完全相同 由笛卡尔积的性质决定 但许多关系数据库产品没有遵循这一性质。 例如:Oracle,FoxPro等都允许关系表中存在两个完全相同的元组,除非用户特别定义了相应的约束条件。,The Principle of Database and applications,基本关系的性质(续),行的顺序无所谓 行的次序可以任意交换 遵循这一性质的数据库产品(如ORACLE

14、), 插入一个元组时永远插至最后一行,但也有许多关系数据库产品没有遵循这一性质,例如FoxPro仍然区分了元组的顺序,The Principle of Database and applications,基本关系的性质(续),分量必须取原子值 每一个分量都必须是不可分的数据项。 这是规范条件中最基本的一条,The Principle of Database and applications,2-1-2 关系模式和关系数据库,所谓关系模式是对关系的结构及关系应满足的完整性约束条件的描述,它包括关系名、组成关系的属性名、属性向域的映象、属性之间的依赖关系等。 其形式表示为五元组:R(U,D,DOM

15、,) R是关系模式名 U是属性集 D是值域集 DOM是属性到域的映像集 是属性的数据依赖集合。,The Principle of Database and applications,定义关系模式,关系模式通常可以简记为 R (U) 或 R (A1,A2,An) R 关系名 A1,A2,An 属性名 注:域名及属性向域的映象常常直接说明为 属性的类型、长度,The Principle of Database and applications,关系模式例,在表2-3给出了“教学管理系统”中的四个关系,它们相应的关系模式为: D(系号,系名,系主任教工号) T(教工号,姓名.性别,职称,系号) C(

16、课程号,课程名,总学时) TC(教工号,课程号,工作量) 表2-3见p22,The Principle of Database and applications,关系数据库模式,有了关系模式的概念,我们可以从另一个角度讨论关系。所谓关系即是某一时刻在该关系模式之下元组的集合。 关系中的每一元组或表示一个实体,或表示实体之间的联系,或兼而有之。 关系模式的集合称为关系数据库模式,而这些关系模式下对应关系的当前值形成关系数据库,由此可见关系数据库模式是对关系数据库信息的描述。,The Principle of Database and applications,2-2 关系的完整性,2-2-1 关系模型的三要素 2-2-2 实体完整性 2-2-3 参照完整性 2-2-4 用户定义的完整性,The Principle of Database and applications,关系的完整性规则,关系

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

当前位置:首页 > 高等教育 > 大学课件

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