免费智能真题库 > 历年试卷 > 程序员 > 2019年下半年 程序员 上午试卷 综合知识
  第61题      
  知识点:   关系数据库与关系运算   函数依赖
  章/节:   数据库基础知识       

 
给出关系R(A,B,C)和S(A,B,C),R和S的函数依赖集F={A->B,B->C}。若R和S进行自然连接运算,则结果集有(61)个属性。关系R和S(62)。
 
 
  A.  3
 
  B.  4
 
  C.  5
 
  D.  6
 
 
 

 
  第60题    2012年下半年  
   36%
假设关系R、S、T如下表所示,关系代数表达式T= (59) : S= (60)。
  第60题    2015年上半年  
   26%
某医院有科室关系D (科室号,科室名,负责人,联系电话),其中:“科室号”唯一标识关系D中的每一个元组。住院部设有病人关系R (..
  第59题    2020年下半年  
   30%
假设关系R1、R2和R3如下表所示,关系代数表达式R3=(58),R1=(59)。
   知识点讲解    
   · 关系数据库与关系运算    · 函数依赖
 
       关系数据库与关系运算
               关系数据库的基本概念
                      属性和域
                      在关系数据模型中,用二维表格结构表示实体类型,用关键码(关键字)表示实体类型和实体间的联系。字段称为属性,字段值称为属性值,记录类型称为关系模型,记录称为元组,元组的集合称为关系或实例。
                      一个事物需要用若干特征来表示,这些特征称为属性。每个属性的取值范围称为该属性的域(domain)。在关系模型中,所有的域都必须是原子数据,这种限制称为第一范式条件。
                      笛卡儿积与关系
                      设关系RS的元数分别为rs。定义RS的笛卡儿积是一个(r+s)元的元组集合,每个元组的前r个分量来自R的一个元组,后s个分量来自S的一个元组,记为R×S。若Rm个元组,Sn个元组,则R×S有(m×n)个元组。
                      关系的相关名词
                      .目或度:这里R表示关系的名字,n表示关系的目或度。
                      .候选码:若关系中的某一属性或属性组的值能唯一标识一个元组,则称该属性或属性组为候选码。
                      .主码:用户选作元组标识的一个候选码称为主码。
                      .外码:某个关系的主码相应的属性在另一关系中出现,此时该主码就是另一关系的外码。
                      .全码:关系模型的所有属性组是这个关系模式的候选码,称为全码。
                      关系的性质
                      .分量必须取原子值,每一个分量必须是不可再分的数据项。
                      .列是同质的,每一列中的分量必须是同一类型的数据,来自同一个域。
                      .属性不能重名,每列为一个属性,不同的列可来自同一个域。
                      .行列的顺序无关。因为关系是一个集合,所以不考虑元组间的顺序。属性在理论上讲也是无序的,但使用时,往往会考虑顺序。
                      .任何两个元组不能完全相同,这是由主码约束来保证的。有些数据库若用户没有定义完整性约束条件,则允许有多个相同的元组。
                      关系的3种类型
                      .基本关系(通常又称为基本表或基表):是实际存在的表,它是实际存储数据的逻辑表示。
                      .查询表:查询结果对应的表。
                      .视图表:是由基本表或其他视图表导出的表。由于它本身不独立存储在数据库中,数据库中只存放它的定义,所以常称为虚表。
               关系数据库模式
               在数据库中要区分型和值,关系数据库中的型也称为关系数据库模式,是关系数据库结构的描述。实际上关系的概念对应于程序设计语言中变量的概念,而关系模式对应于程序设计语言中类型定义的概念。关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常称为关系数据库。
               关系的描述称为关系模式,可以表示为:RU,D, dom, F)。其中R表示关系名;U是组成该关系的属性名的集合;D是属性的域;dom是属性向域的映射集合;F是属性间数据的依赖关系组合。
               通常将关系模式简记为RU)或RA1,A2, …,An)。其中R表示关系名,A1,A2, …,An为属性名或域名。通常在关系模式主属性下加下划线来表示该属性为主码属性。
               完整性约束
               为了维护数据库中数据与现实世界的一致性,对关系数据库的插入、删除和修改操作必须有一定的约束条件,这就是关系模型的三类完整性:实体完整性、参照完整性和用户定义完整性。
                      实体完整性
                      实体完整性(Entity Integrity)是指主属性的值不能为空或部分为空。关系模型中的一个元组对应一个实体,一个关系则对应一个实体集。例如,一条学生记录对应着一个学生,学生关系对应着学生的集合。关系模型中以主属性来唯一标识元组。例如,学生关系中的属性"学号"可以唯一标识一个元组,也可以唯一标识学生实体。
                      参照完整性
                      参照完整性(Referential Integrity)是指如果关系R2的外码X与关系R1的主码相符,则X的每个值或者等于R1中主码的某一个值,或者取空值。
                      实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作关系的两个不变性。
                      用户定义完整性
                      用户定义完整性(User-defined Integrity)是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。
               关系代数运算
                      关系代数的分类及其运算符
                      关系代数是对关系进行集合代数的运算,是基于关系代数的操作语言,称为关系代数语言,简称关系代数。关系代数的运算对象是关系,运算结果也是关系,关系代数用到的运算符主要包括以下4类。
                      .集合运算符:∪(并)、-(差)、∩(交)、×(广义笛卡儿积)。
                      .专门的关系运算符:σ(选择)、Π(投影)、∞(连接)、*(自然连接)、÷(除)。
                      .算术比较运算符:>(大于)、≥(大于等于)、<(小于)、≤(小于等于)、=(等于)、≠(不等于)。
                      .逻辑运算符:∧(与)、∨(或)、┒(非)。
                      关系代数的运算按运算符的不同主要分为以下两类。
                      .传统的集合运算:把关系看成元组的集合,以元组作为集合中的元素来进行运算,其运算是从关系的"水平"方向即行的角度进行的,包括并、差、交和笛卡儿积等运算。
                      .专门的关系运算:不仅涉及行运算,也涉及列运算,这种运算是为数据库的应用而引进的特殊运算,包括选取、投影、连接和除法等运算。
                      关系代数操作
                      并、差、笛卡儿积、投影和选择是5种基本运算,其他运算可由基本运算导出。
                      .并:设有两个关系RS,RS的并是由属于R或属于S的元数组成的集合,记为RS
                      .差:R-S定义为属于R但不属于S的所有元组的集合。
                      .笛卡儿积:设关系RS的元数分别为ab,RS的笛卡儿积是一个(a+b)元的元组集合,每个元组的前一个分量来自R的一个元组,后S个分量来自S的一个元组,记为R×S
                      .投影:对关系进行垂直分割,消去关系中的某些列,重新安排列次序,再删去重复的元组。由于某些列删除后,某些元组可能会变得完全相同,那些相同的元组经投影操作后只保留一个。所以,在关系代数中,对一个关系进行投影操作以后,新关系的元组个数小于或等于原来关系的元组个数。
                      .交:RS定义为属于关系R又属于关系S的元组的集合。
                      .选择:根据某些条件对关系作水平分割,选择符合条件的元组。
                      .连接:定义为从RS的笛卡儿积中,选择属性间满足一定条件的元组的集合。
                      .自然连接:在R×S中,选择RS公共属性值均相等的元组,并去掉R×S中重复的公共属性列。如果两个关系没有公共属性,则自然连接就转化为笛卡儿积。
                      如果关系R和关系S作自然连接时,将关系R中原舍弃的元组放到新关系中,这种操作称为"左外连接",用符号"]×|"表示,如R]×|S。如果关系R和关系S作自然连接时,将关系S中原舍弃的元组放到新关系中,那么这种操作称为"右外连接",用符号"|×["表示,如R|×[S。自然连接的操作符为∞,如RS
 
       函数依赖
        设RU)是属性U上的一个关系模式,XYU的子集,rR的任一关系,如果对于r中的任意两个元组uv,只要有u[X]=v[X],就有u[Y]=v[Y],则称X函数决定Y,或称Y函数依赖于X,记为XY
        从函数依赖的定义可以看出,如果有XU在关系模式RU)上成立,并且不存在X的任一真子集X′使X′→U成立,那么称XR的一个候选键。也就是X值唯一决定关系中的元组。由此可见,函数依赖是键概念的推广,键是一种特殊的函数依赖。
        在RU)中,如果XY,并且对于X的任何一个真子集X′,都有X′→Y不成立,则称YX完全函数依赖。若XY,但Y不完全函数依赖于X,则称YX部分函数依赖。
        在RU)中,如果XYY不是X的真子集),且YX不成立,YZ,则称ZX传递函数依赖。
        设U是关系模式R的属性集,FR上成立的只涉及U中属性的FD集,则有以下三条推理规则:
        (1)自反性:若Y?X?U,则XYR上成立;
        (2)增广性:若XYR上成立,且Z?U,则XZYZR上成立;
        (3)传递性:若XYYZR上成立,则XZR上成立。
        这里XZYZ等写法表示XZYZ。上述三条推理规则是函数依赖的一个正确的和完备的推理系统。根据上述三条规则还可以推出其他三条常用的推理规则:
        (1)并规则:若XYXZR上成立,则XYZR上成立;
        (2)分解规则:若XYR上成立,且Z?Y,则XZR上成立;
        (3)伪传递规则:若XYWYZR上成立,则WXZR上成立。
        在关系模式RUF)中为F所逻辑蕴含的函数依赖全体叫做F的闭包,记作F+
        设F为属性集U上的一组函数依赖,XU的子集,那么相对于F属性集X的闭包用X+表示,它是一个从F集使用推理规则推出的所有满足XA的属性A的集合:
        X+={属性A|XAF+中}
        如果G+=F+,就说函数依赖集F覆盖GFG的覆盖,或GF的覆盖),或FG等价。
        如果函数依赖集F满足下列条件,则称F为一个极小函数依赖集,也称为最小依赖集或最小覆盖。
        (1)F中任一函数依赖的右部仅含有一个属性;
        (2)F中不存在这样的函数依赖XA,使得FF-{XA}等价;
        (3)F中不存在这样的函数依赖XAX有真子集Z使得F-{XA}∨{ZA}与F等价。
   题号导航      2019年下半年 程序员 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第61题    在手机中做本题