|
||||||||||||||||||||||||||||||||||||||
习题二答案
(1) 函数依赖:设R<U>是属性集U上的关系模式,X,Y是U的子集。若对于R<U>的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而Y上的属性值不等,则称X函数确定Y函数,或Y函数依赖于X函数,记作X→Y 。例如,在学生(学号,姓名,年龄,年级)表中:学号→姓名,学号→年龄,学号→年级。
(2)部分函数依赖和完全函数依赖:在R<U>中,如果X→Y,并且对于X的任何一个真子集X’,都有X’→Y ,则称Y对X完全依赖,记作:X→Y;若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作:X→Y。
例如,在教学关系模式中,学号和课程名为主码。(学号,课程名)→成绩,(学号,课程名)→姓名。
(3)传递函数依赖:在R<U>中,如果X→Y, ( Y X ), Y→X , Y→Z, 则称Z对X传递函数依赖。传递函数依赖记作X → Z
。 例如,在教学模式中,因为存在:学号→系名,系名→系主任;所以也存在:学号→系主任。
(4)候选关键字,主关键字,全关键字:设R <A1,A2…An > 为一关系模式,F为R所满足的一级函数依赖,X为{ A1,A2…An }的子集,如果X满足:
1)X→A1,A2…An∈F+ 。
2)不存在X的真子集Y,Y X, Y→A1,A2…An∈F+。则称X是关系模式的候选码(候选关键字)。在候选关键字中选择一个为主码(主关键字)。如果关系模式中不存在函数依赖,则全部属性构成码,即为全码(全关键字)。
(5)1NF,2NF,3NF,BCNF:如果关系模式R,其所有的属性均为简单属性,即每个属性都是不可再分的,则称R属于第一范式;若R∈1NF,且每一个非属性完全依赖于码,则R∈2NF;关系模式 R<U,F> 中若不存在这样的码X、属性组Y及非主属性Z(Z不为Y子集)使得X→Y、X不可推导出Y,Y→Z成立,则称 R<U,F> ∈3NF;系模式R<U,F>∈1NF。若X→Y且Y 不为X子集时,X必含有码,则R<U,F> ∈BCNF。
2.答:关系查询语言根据其理论基础的不同分为两大类,一是关系代数语言(查询操作是以集合操作为基础的运算);另一是关系演算语言(查询操作是以谓词演算为基础的运算)。按谓词变元的基本对象是元组变量(Tuple variable)还是域变量(Domain variable)又分为元组关系演算和域关系演算两种。这两种方式的功能是等价的。
3.答:
关系模型的完整性包括实体完整性(Entity Integrity)、参照完整性(Referential integrity)和用户定义的完整性。
关系代数的运算对象是关系,运算结果也为关系。关系代数用到的运算符号有四类:集合运算符、专门的关系运算符、算术比较符和逻辑运算符。
(1) 集合运算符:U (并)、∩(交)、-(差)、×(笛卡儿积)。
(2) 专门的关系运算符:σ(选择)、(投影)π、∞(联接)、÷(除)。
(3) 算术比较符:<(小于),≤(小于等于),>(大于),≥(大于等于),≠(不等于),=(等于)。
(4) 逻辑运算符:∧(与),∨(或),┐(非)。
不 正确。因为学号不能够单独决定课程号。
6.答:
1) 正确。
2) 正确。
3) 正确。
4) 正确。
5) 正确。
6) 正确。
7) 不正确。
1)把查询转换成语法树表示。
2)把语法树转换成标准(优化)形式。
3)选择低层的存取路径。
4)生成查询计划,选择代价最小的查询计划。
1)图书(阅览证号,学号,姓名,性别,系部,书号,书名,作者,出版社,出版日期,页数,借书日期,还书日期);
1NF
读者信息(阅览证号,学号,姓名,性别,系部) 2NF
图书信息(书号,书名,作者,出版社,出版日期,页数) 3NF
借阅(阅览证号, 书号,借书日期,还书日期),外码:阅览证号, 书号
3NF
2)医疗(患者编号,患者姓名,患者性别,患者电话,医生编号,医生姓名,医生性别,医生电话,医生职称,诊断日期,诊断结果,恢复情况,科室编号,科室名称,科室面积);
(1)患者信息表(患者编号,患者姓名,患者性别,患者电话)3NF
(2)医生信息表(医生编号,医生姓名,医生性别,医生电话,医生职称, 科室编号)3NF
(3)科室信息表(科室编号,科室名称,科室面积)3NF
(4)治疗表(患者编号, 医生编号,诊断日期,诊断结果,恢复情况)3NF,外码:患者编号, 医生编号
3)仓库(管理员号,管理员姓名,性别,出生日期,联系电话,商品号,商品名,类别,保质期,单位,购入日期,购入数量,库房编号,库房名称,库房面积)
(1) 管理员信息表(管理员号,管理员姓名,性别,出生日期,联系电话,库房编号)3NF
(2) 商品表(商品号,商品名,类别,保质期,单位, 库房编号)3NF
(3) 库房表(库房编号,库房名称,库房面积)3NF
(4) 进货表(管理员号,商品号,购入日期,购入数量,购入单价)3NF,外码:管理员号,商品号
(5) 出库表((管理员号,商品号,出库日期,出库数量,出库单价))3NF外码:管理员号,商品号
σ(选择)、(投影)π、∞(联接)、÷(除)。
student(snum,sname,sex,age)
sc(snum,cnum,grade)
course(cnum,cname,teacher)
1) π
cnum,cname σteacher='李明'(course)
2) π
cnum,cname,teacher,grade σsnum='2019001112'(sc)∞(course)
3) πsname(σ1=4∧2≠5(sc∞sc)∞πsnum,sname(student))
4) πsname((σteacher='李明'(course))∞(sc)∞πsnum,sname(student))
5) π
cnum,cname,teacher((σsex='女'(student))∞(sc)∞(course)
6) π
snum,sname((πsnum,cnum(sc)÷πsnum(course))∞πsnum,sname(student))