欢迎来到天天文库
浏览记录
ID:40753217
大小:256.06 KB
页数:30页
时间:2019-08-07
《参考资料-关系模型与关系代数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章关系数据库3.1关系模型及其定义3.1.1关系数据结构3.1.2关系操作概述3.1.3关系的完整性3.2关系代数3.2.1传统的集合运算3.2.2专门的关系运算3.2.3用关系代数表示检索的例子3.1关系模型及其定义3.1.1关系数据结构1.关系的数学定义1)域的定义:域是一组具有相同数据类型的值的集合。2)笛卡儿积(CartesianProduct)的定义:给定一组域D1,D2,…,Dn,这些域中可以有相同的部分,则笛卡儿积为:D1×D2×…×Dn={(d1,d2,…dn)|di∈Di,i=1,2,…,n}.其中:每一
2、个元素(d1,d2,…,dn)称为一个n元组,简称元组。元素中的每一个值di称作一个分量)。例如给出三个域:D1=姓名={王平,李丽,张晓刚};D2=性别={男,女};D3=年龄={19,20}.则D1,D2,D3的笛卡儿积为D1×D2×D3姓名性别年龄王平男19王平男20王平女19王平女20李丽男19李丽男20李丽女19李丽女20张晓刚男19张晓刚男20张晓刚女19张晓刚女201.关系的数学定义3)关系(Relation)的定义:D1×D2×…×Dn的子集称作在域D1,D2,…,Dn上的关系,表示为:R(D1,D2,…,Dn
3、).这里:R表示关系的名字,n是关系的目或度。从D1×D2×D3中取出有用的元组,所构造的学生关系如表所示姓名性别年龄王平男20李丽女20张晓刚男192.关系中的基本名词1)元组:关系表中的每一横行称作一个元组,组成元组的元素为分量。2)属性:关系中的每一列称为一个属性。3)候选码、主码、全码:若关系的候选码中只包含一个属性,则称它为单属性码;若候选码是由多个属性构成的,则称为它为多属性码。若关系中只有一个候选码,且这个候选码中包括全部属性,则这种候选码为全码。4)主属性和非主属性:关系中,候选码中的属性称为主属性,不包含在任
4、何候选码中的属性称为非主属性。3.数据库中关系的类型1)基本表:关系数据库中实际存在的表,是实际存储数据的逻辑表示。2)视图表:视图表是由基本表或其他视图表导出的表。3)查询表:查询表是指查询结果表或查询中生成的临时表。4.数据库中基本关系的性质1)同一属性的数据具有同质性。2)同一关系的属性名具有不能重复性。3)关系中的列位置具有顺序无关性。4)关系具有元组无冗余性。5)关系中的元组位置具有顺序无关性。6)关系中每一个分量都必须是不可分的数据项。5.关系模式的定义形式化地表示为:R(U,D,Dom,F)其中:R为关系名,它是
5、关系的形式化表示;U为组成该关系的属性集合;D为属性组U中属性所来自的域;Dom为属性向域的映象的集合;F为属性间数据的依赖关系集合。关系模式通常可以简单记为:R(U)或R(A1,A2,…,An).其中:R为关系名,A1,A2,…,An为属性名。6.关系数据库在某一应用领域中,所有实体集及实体之间联系所形成关系的集合就构成了一个关系数据库。3.1.2关系操作概述1.关系操作的基本内容关系操作包括数据查询、数据维护和数据控制三大功能:数据查询指数据检索、统计、排序、分组以及用户对信息的需求等功能;数据维护指数据增加、删除、修改等
6、数据自身更新的功能;数据控制是为了保证数据的安全性和完整性而采用的数据存取控制及并发控制等功能。关系操作的数据查询和数据维护功能使用关系代数中的选择(Select)、投影(Project)、连接(Join)、除(Divide)、并(Union)、交(Intersection)、差(Difference)以及广义笛卡儿积(ExtendedCartesianProduct)8种操作。2.关系操作的特点(1)关系操作语言操作一体化具有数据定义、查询、更新和控制一体化的特点,既可以作为宿主语言嵌入到主语言中,又可以作为独立语言交互使
7、用。(2)关系操作的方式是一次一集合方式其他系统的操作是一次一记录方式,而关系操作的方式则是一次一集合方式。关系操作数据结构单一的特点,能够使其利用集合运算和关系规范化等数学理论进行优化和处理操作,但关系操作与其他系统配合时需要解决处理方式的矛盾。(3)关系操作语言是高度非过程化的语言具有强大的表达能力。用户使用关系语言时,只需要指出做什么,而不需要指出怎么做,数据存取路径的选择、数据操作方法的选择和优化都由DBMS自动完成。3.关系操作语言的种类(1)关系代数语言用对关系的运算来表达查询要求的语言。(2)关系演算语言用查询得
8、到的元组应满足的谓词条件来表达查询要求的语言。关系演算语言又可以分为元组演算语言和域演算语言两种:元组演算语言的谓词变元的基本对象是元组变量,例如APLHA语言;域演算语言的谓词变元的基本对象是域变量,QBE(QueryByExample)是典型的域演算语言。(3)基于映象的
此文档下载收益归作者所有