预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共69页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第4章关系数据库4.1关系模型及其定义2)笛卡儿积(CartesianProduct)的定义:给定一组域D1,D2,…,Dn,这些域中可以有相同的部分,则笛卡儿积为:D1×D2×…×Dn={(d1,d2,…dn)|di∈Di,i=1,2,…,n}.其中:每一个元素(d1,d2,…,dn)称为一个n元组,简称元组。元素中的每一个值di称作一个分量)。例如给出三个域:D1=姓名={王平,李丽,张晓刚};D2=性别={男,女};D3=年龄={19,20}.姓名3)关系(Relation)的定义:D1×D2×…×Dn的子集称作在域D1,D2,…,Dn上的关系,表示为:R(D1,D2,…,Dn).这里:R表示关系的名字,n是关系的目或度。姓名2.关系中的基本名词4)侯选码:在一个关系中,某一个属性或属性组的值能唯一标识该关系的元组,而其真子集不行,则该属性或属性组称为侯选码。5)主码:若一个关系有多个侯选码,则选定其中一个为主码。6)主属性和非主属性:关系中,候选码中的属性称为主属性,不包含在任何候选码中的属性称为非主属性。7)单属性码、多属性码、全码:若关系的候选码中只包含一个属性,则称它为单属性码;若候选码是由多个属性构成的,则称为它为多属性码。若关系中只有一个候选码,且这个候选码中包括全部属性,则这种候选码为全码。3.数据库中关系的类型1)基本表:关系数据库中实际存在的表,是实际存储数据的逻辑表示。2)视图表:视图表是由基本表或其他视图表导出的表。3)查询表:查询表是指查询结果对应的表4.数据库中基本关系的性质1)同一属性的数据具有同质性。2)同一关系的属性名具有不能重复性。3)关系中的列位置具有顺序无关性。4)关系具有元组无冗余性。5)关系中的元组位置具有顺序无关性。6)关系中每一个分量都必须是不可分的数据项。读者关系5.关系模式的定义所谓关系模式就是对关系的描述。描述的内容包括:元组集合结构:有哪些属性、属性来自哪些域,属性与域之间的映象关系。元组集合的语义。完整性约束条件:属性间的相互关系,属性的取值范围限制。R(U,D,DOM,F):R表示关系名,U表示属性集合,D表示属性来自的域,DOM表示属性向域的映像的集合,F为属性间数据的依赖关系。关系模式一般R(U)或R(A1,A2,…,An)6.关系数据库在某一应用领域中,所有实体及实体之间联系所形成关系的集合就构成了一个关系数据库。4.1.2关系操作概述2.关系操作的特点4.1.3关系的完整性2.关系模型的参照完整性1)外码和参照关系设F是基本关系R的一个或一组属性,但不是关系R的主码(或候选码)。如果F与基本关系S的主码相对应,则称F是R的外码,并称R为参照关系,S为被参照关系或目标关系。例如,“基层单位数据库”中有“职工”和“部门”两个关系,其关系模式如下:职工(职工号,姓名,工资,性别,部门号);部门(部门号,名称,领导人号).其中:主码用下划线标出,外码用红色字体标出。病员记录2)参照完整性规则若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R中每个元组在F上的值必须取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值。职工姓名Name3用户定义的完整性。用户定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。4.2关系代数1)集合运算符:∪(并运算),-(差运算),∩(交运算),×(广义笛卡儿积)。2)专门的关系运算符:σ(选择),π(投影),(连接),÷(除)。3)比较运算符:>(大于),≥(大于等于),<(小于),≤(小于等于),=(等于),≠(不等于)。4)逻辑运算符:(非),∧(与),∨(或)。4.2.1传统的集合运算2.差(Difference)运算R-S={t|tR∧tS}.R和S差运算的结果关系仍为n目关系,其数据由属于R而不属于S的所有元组组成。3.交(Intersection)运算R∩S={t|tR∧tS}.运算的结果关系仍为n目关系,其数据由既属于R同时又属于S的元组组成。交可用差来表示:R∩S=R-(R-S).4.笛卡儿积运算设n目和m目的关系R和S,它们的笛卡儿积是一个(n+m)目的元组集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡儿积应当有k1×k2个元组。R和S的笛卡儿积表示为:R×S={trts|trR∧tsS}.1.记号说明(1)关系模式、关系、元组和分量设关系模式为R(A1,A2,…,An),它的一个关系设为R,tR表示t是R的一个元组,t[Ai]则表示元组t中相对于属性Ai的一个分量。(2)域列和域列非若A={Ai1,Ai2,…,Aik},其中Ai1,A