大学2019-2020《数据库系统原理》试卷及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大学2019—2020学年第2学期考试卷参考答案
一、填空题(每空1分,共18分)
1、 数据库管理系统 是位于用户与操作系统之间的一层数据管理软件。
2、数据库系统的三级模式结构是指 内模式 、 模式 、 外模式 。
3、数据库系统的三种数据模型是 层次模型 、 关系模型 、 网状模型 。
4、若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为 候选码 。
5、实体联系模型中三种联系是 一对一联系(1:1)、 一对多联系(1:n ) 、 多对多联系(m :n ) 。
6、数据库事务的ACID 特性是指 原子性 、 一致性 、 隔离性 和持续性。
7、并发控制带来的三种数据不一致是丢失数据、 不可重复读 、 读“脏”数据 。
8、封锁是实现并发控制的一个非常重要的技术,基本的封锁类型有两种,即共享锁(X 琐)、 排它锁(S 锁) 。
二、选择题(每空1分,共12分)
1、关系模式的任何属性 A
A. 不可再分
B. 可再分
C. 命名在该关系模式中可以不唯一
D. 以上都不是 2、关系数据库中的关键字是指 D
A. 能唯一决定关系的字段
B. 不可改动的专用保留字
C. 关键的很重要的字段
D. 能唯一标是元组的属性或属性组合 3、有关系R 和S ,R ∩S 的运算等价于 B
A. S-(R-S)
B. R-(R-S)
C. (R-S)∪S
D. R ∪(R-S)
4、设关系R 和S 的属性个数分别为r 和s ,则(R ×S)操作结果的属性个数为 A A. r+s B. r-s
C. r ×s
D. max(r,s) 5、进行自然联接运算的两个关系必须具有 B
A. 相同属性个数
B. 公共属性
C. 相同关系名
D. 相同关键字 6、关系模式中,各级范式之间的关系为 A A. 3NF ⊂2NF ⊂1NF B. 3NF ⊂1NF ⊂2NF C. 1NF ⊂2NF ⊂3NF
D. 2NF ⊂1NF ⊂3NF
7、在关系数据库中,任何二目关系模式的最高范式必定是 D
A. 1NF
B. 2NF
C. 3NF
D. BCNF
8、设有关系模式R(A ,B ,C ,D),F 是R 上成立的FD 集,F={B →C,C →D},则属性C 的闭包C +为 C
A. BCD
B. BD
C. CD
D. BC
9、从E-R 图向关系模型转换时,一个n:m 的联系转换为关系模式时,该关系模式的关键字是 A
A. n 端实体关键字和m 端实体关键字的组合
B. n 端实体的关键字
C. m 端实体的关键字
D. 重新选取其它属性
10、在ER 模型中,如果有6个不同实体集,有9个不同的二元联系,其中3个1∶N 联系,3个1∶1联系,3个M ∶N 联系,根据ER 模型转换成关系模型的规则,转换成关系的数目是 D
A. A.6
B.9
C.12
D.15 11、关于“死锁”,下列说法中正确的是 C A. 死锁是操作系统中的问题,数据库操作中不存在
B. 在数据库中防止死锁的方法是禁止两个用户同时操作数据库
C. 只有出现并发操作时,才有可能出现死锁
D. 当两个用户竞争相同资源时,不会发生死锁
12、设有两个事物T1和T2,他们的并发操作如下图所示。对于这个并发操作,正确的评价是 A
A. 该操作丢失了修改
B. 该操作不存在问题
C. 该操作读“脏”数据
D. 该操作不能重复读
三、求解、计算或证明题(50分)
1、根据题目要求为每一个查询写出关系代数表达式及SQL 语句(18分)
在学生选课数据库中有学生表S(Sno ,Sname ,Ssex);课程表C(Cno ,Cname);选课表SC(Sno ,Cno ,Grade),请完成以下查询:
1)查询S2学生选修的课程号、课程名、成绩 (4分) 2)查询C2课程共有哪些学号的学生选修及成绩 (4分) 3)查询“李强”同学没有选修的课程的课程号 (6分)
4)用SQL 语言完成该操作:把对SC 表的查询和修改Grade 属性的权限授给用户“李强”。(4分)
1) πCno, Cname, Grade (σSno=‘S2’
(SC) (1分)
Select Cno, Cname, Grade From SC,C Where o=o and SC.Sno=’S2’ (3分) 2) πSno, Grade (σCno=‘C2’ (SC)) (1分)
Select Sno, Grade from SC where o=’C2’ (3分) 3) πCno(C) —πCno (σSname =‘李强’ (S) SC) (2分)
SELECT CNO FROM C
WHERE CNO NOT IN (SELECT CNO FROM SC,S
WHERE SC.SNO=S.SNO AND S.SNAME=’李强’) ; (4分)
4)GRANT SELECT ,UPDATE (Grade ) ON TABLE SC
TO 李强 (4分)
2、若关系模式R ∈BCNF ,证明R ∈3NF.(8分)
证明:①设R ∈BCNF ,则对所有R 中的函数依赖X →Y (
Y ⊆X ),X 中必含有码 ②假定R(U,F) ∈3NF ,则必定存在有一个非主属性Z ’(Z ’⊆Y ’),使得X ’→Y ’ (Y ’→X ’),Y ’→Z ’成立
③由于存在非主属性Z ’,使X ’→Y ’和Y ’→Z ’成立,而R ∈BCNF ,则X ’中必含有码X k ,Y ’中含有码Y k ,则Y ’→X ’成立,与②中的结论相矛盾。
因此R ∈3NF
3、根据给出的关系代数表达式的语法树,利用关系代数表达式的优化算法对该语法树进行优化,画出优化后的标准语法树(12分)
在供应关系数据库S_P_J 中有供应商表S ,零件表P ,工程项目表J ,及供应情况表SPJ 四个表。以下是“没有使用天津供应商生产的红色零件的工程号JNO ” 对应的关系代数表达式,并给出了查询语句和初始语法树。
其关系代数表达式为:πJno (J) -πJno (σS.Sno=SPJ.Sno ∧P.Pno=SPJ.Pno ∧City=‘天津’∧Color=‘红’(S×SPJ×P))
SQL 语句为: 语法树为:SELECT JNO FROM J
WHERE JNO NOT IN(SELECT JNO FROM S,SPJ,P
WHERE S.SNO=SPJ.SNO AND
SPJ.PNO=P.PNO AND S.CITY=‘天津’ AND P.COLOR=‘红’)
请用关系代数表达式优化算法对原始的语法树 进行优化处理,并画出优化后的标准语法树。
πJno (J) -πJno (σS.Sno=SPJ.Sno ∧P.Pno=SPJ.Pno ∧City=‘天津’∧Color=‘红’(S×SPJ×P)
≡πJno (J)-πJno (σS.Sno=SPJ.Sno (σP.Pno=SPJ.Pno (σCity=‘天津’(σColor=‘红’(S×SPJ×P ))))) ≡πJno (J)-πJno (σS.Sno=SPJ.Sno (σP.Pno=SPJ.Pno (σCity=‘天津’(S)×SPJ×σColor=‘红’(P )))) ≡πJno (J)-πJno (σP.Pno=SPJ.Pno (σCity=‘天津’ (S ) SPJ×σColor=‘红’ (P))) ≡πJno (J)-πJno (σCity=‘天津’ (S ) SPJ σColor=‘红’ (P)) (4分)
(8分)优化后的标准语法树为: