1、中级数据库系统工程师下午试题-4 (1)及答案解析(总分:75.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)阅读以下说明和关系表,回答问题 1-3,将解答填入对应的解答栏内。说明下图为学校对本学期的课程安排表。 专业 课程 课程代号 学分 教师 教师代号数学 常微方程 C1 4 王华 T1数学 抽象代数 C2 3 张新 T2计算机物理 数据结构 C3 4 吴冰 T3计算机 软件工程 C4 3 赵锦 T4(分数:15.00)(1).问题 1该表能直接作为关系数据库的关系吗?如果不行,请说明理由,并改造成能作为数据库关系的形式。(分数:5.00)_(2).问题 2对
2、上面改造后的数据库关系 R,它属于第几范式?(分数:5.00)_(3).问题 3如果它不属于 3NF,请规范化为 3NF。(分数:5.00)_二、B试题二/B(总题数:1,分数:20.00)阅读以下说明,回答问题 1-5,将解答填入对应的解答栏内。说明设关系 R,S 分别为下面表所示:(分数:20.00)(1).问题 1计算 RS。(分数:4.00)_(2).问题 2计算 RS。(分数:4.00)_(3).问题 3计算 R-S。(分数:4.00)_(4).问题 4计算 RS。(分数:4.00)_(5).问题 5计算 R (分数:4.00)_三、B试题三/B(总题数:1,分数:20.00)阅读以
3、下说明和关系表,回答问题 1-2,将解答填入对应的解答栏内。说明下图是飞机票预定的数据库,售票员的顾客编号是指每个售票员自己接收过哪些顾客的订单,用顾客编号来表示。飞机票 编号 班次 日期 位次 价格 目的地 始发地售票员 编号 姓名 性别 顾客编号顾客 编号 姓名 地址 班次 日期(分数:20.00)(1).问题 1请用 SQL语句来建立这三个基本表:飞机票 Ticket、售票员 Seller和顾客Customer(请注意数据类型的选择)其中各表属性如下:Ticket:Tno,Tflidltno,Tdate,Tseat,TPrice,Tdest,TdepartSeller:Sno,Sname
4、,Ssex,ScustomernoCustomer:Cno,Cname,Caddr,Cflightno,Cdate(分数:10.00)_(2).问题 2请用 SQL实现如下操作:(1) 查询预定 11月 13日,班次为 1202的所有顾客姓名(2) 查询给顾客王军预定机票的售票员姓名(3) 查询顾客王军的住址、所订机票班次、日期和目的地(4) 添加顾客记录:张华,编号:2005110912,地址:北京,班次:2203,日期 11月 22日(5) 调整班次为 1401的所有飞机价格,下调 10(6) 给表 Customer添加一列:姓别 Ssex。(分数:10.00)_四、B试题四/B(总题数:
5、4,分数:20.00)1.问题 1 简述活锁和死锁的概念,死锁的测试,解除死锁的方法。(分数:5.00)_2.问题 2 简述数据库的运行维护阶段的主要工作是什么?(分数:5.00)_3.问题 3 简述数据库系统的三级模式结构并对各模式作出解释。(分数:5.00)_4.问题 4 简述数据的不一致与并发控制的关系。(分数:5.00)_中级数据库系统工程师下午试题-4 (1)答案解析(总分:75.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)阅读以下说明和关系表,回答问题 1-3,将解答填入对应的解答栏内。说明下图为学校对本学期的课程安排表。 专业 课程 课程代号 学分
6、 教师 教师代号数学 常微方程 C1 4 王华 T1数学 抽象代数 C2 3 张新 T2计算机物理 数据结构 C3 4 吴冰 T3计算机 软件工程 C4 3 赵锦 T4(分数:15.00)(1).问题 1该表能直接作为关系数据库的关系吗?如果不行,请说明理由,并改造成能作为数据库关系的形式。(分数:5.00)_正确答案:()解析:不能因为关系模式至少应该为 1NF,不包含重复和嵌套结构,改造后的 1NF关系如下所示:(2).问题 2对上面改造后的数据库关系 R,它属于第几范式?(分数:5.00)_正确答案:()解析:R 仅为 1NF,因为存在部分依赖,课程代号课程,课程代号学分,教师代号教师,
7、所以仅仅为 1NF(3).问题 3如果它不属于 3NF,请规范化为 3NF。(分数:5.00)_正确答案:()解析:规范化后的关系模式为关系 R1: 专业 课程代号 教师数学 C1 王华数学 C2 张新计算机 C3 吴冰物理系 C3 吴冰计算机 C4 赵锦关系 R2:课程代号 课程 学分C1 常微方程 4C2 抽象代数 3C3 数据结构 4C3 数据结构 3C4 软件工程 3关系 R3:教师代号 教师T1 王华T2 张新T3 吴冰T3 吴冰T4 赵锦二、B试题二/B(总题数:1,分数:20.00)阅读以下说明,回答问题 1-5,将解答填入对应的解答栏内。说明设关系 R,S 分别为下面表所示:(
8、分数:20.00)(1).问题 1计算 RS。(分数:4.00)_正确答案:()解析:3,2(R)(如图 1) C B5 b16 b28 b312 b4图 1(2).问题 2计算 RS。(分数:4.00)_正确答案:()解析:RUS(如图 2) A B Ca1 b1 5a1 b2 6a2 b3 8a2 b4 12a4 b2 6a2 b5 8图 2(3).问题 3计算 R-S。(分数:4.00)_正确答案:()解析:R-S(如图 3) A B Ca1 b2 6a2 b3 8a2 b4 12图 3(4).问题 4计算 RS。(分数:4.00)_正确答案:()解析:C7(S)(如图 4) A B C
9、a2 b5 8图 4(5).问题 5计算 R (分数:4.00)_正确答案:()解析:A B Ca1 b1 5图 5三、B试题三/B(总题数:1,分数:20.00)阅读以下说明和关系表,回答问题 1-2,将解答填入对应的解答栏内。说明下图是飞机票预定的数据库,售票员的顾客编号是指每个售票员自己接收过哪些顾客的订单,用顾客编号来表示。飞机票 编号 班次 日期 位次 价格 目的 地 始发 地售票员 编号 姓名 性别 顾客编号顾客 编号 姓名 地址 班次 日期(分数:20.00)(1).问题 1请用 SQL语句来建立这三个基本表:飞机票 Ticket、售票员 Seller和顾客Customer(请注
10、意数据类型的选择)其中各表属性如下:Ticket:Tno,Tflidltno,Tdate,Tseat,TPrice,Tdest,TdepartSeller:Sno,Sname,Ssex,ScustomernoCustomer:Cno,Cname,Caddr,Cflightno,Cdate(分数:10.00)_正确答案:()解析:CREATE TABLE Ticket( Tno int, Tflightno int, Tdate date, Tseat int, Tprice float, Tdest char(20 ), Tdepart char( 20), ); CREATE TABLE S
11、eller( Sno int, Sname char(20), Ssex char( 2), Scustomemo iht , ); CREATE TABLE Customer( Cno int, Cname int, Caddr char(20), Cflightno int, Cdate date );(2).问题 2请用 SQL实现如下操作:(1) 查询预定 11月 13日,班次为 1202的所有顾客姓名(2) 查询给顾客王军预定机票的售票员姓名(3) 查询顾客王军的住址、所订机票班次、日期和目的地(4) 添加顾客记录:张华,编号:2005110912,地址:北京,班次:2203,日期
12、11月 22日(5) 调整班次为 1401的所有飞机价格,下调 10(6) 给表 Customer添加一列:姓别 Ssex。(分数:10.00)_正确答案:()解析:SELECT Cname FROM Cumtomer WHERE Cdate = 2005 - 11 - 13 and Cflightno = 1202; (2)SELECT Sname from Seller, Cumtomer Where Seller. Seustomerno = Customer. Cno (3) SELECT Caddr, Cflightno, Cdate, Tdest from Ticket, Cumt
13、omer Where Ticket. Cnightno = Customer. Cflightno and Ticket. Tdate = Customer. Cdate (4) INSERT INTO Customer (Cno, Cname, Caddr, Cflightno, Cdate) VALUES ( 2005110912, 张华, 北京, 2203, 2005 - 11 - 22 ); (5) UPDATE Tprice SET Tprice = 0.9 * Tprice WHERE Tflightno = 1401; (6) ALTER TABLE Customer ADD C
14、sex char(2)四、B试题四/B(总题数:4,分数:20.00)1.问题 1 简述活锁和死锁的概念,死锁的测试,解除死锁的方法。(分数:5.00)_正确答案:()解析:活锁是指某个事务永远处于等待状态,得不到执行的现象 死锁是指有两个以上:的事务处于等待状态,每个事务都在等待其中一个事务解除封锁, 它才能继续执行下去,结果任何一个事务都尤法执行,这种现象叫死锁。 死锁的测试:DDNS 中有一个死锁测试程序,每隔一段时间检查并发的事务之间是否发生死锁。 解除死锁的方法:选择一个处理死锁代价最小的事务,将其撤销,释放此事务持有的所有锁,使其他事务能继续运行下去。2.问题 2 简述数据库的运行
15、维护阶段的主要工作是什么?(分数:5.00)_正确答案:()解析:数据库运行维护阶段的主要工作是: 维护数据库的安全性与完整性控制及系统的转储和恢复 性能的监督、分析和改进 增加新功能 发现错误,修改错误3.问题 3 简述数据库系统的三级模式结构并对各模式作出解释。(分数:5.00)_正确答案:()解析:数据库系统的三级模式结构是指数据库系统有外模式、模式和内模式三级构成。 外模式是指数据库用户看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 模式是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。 内模式是数据物理结构和存储结构的描述,是数据在数据库内部的表示方式。4.问题 4 简述数据的不一致与并发控制的关系。(分数:5.00)_正确答案:()解析:数据库系统是一个多用户共享系统,在多个用户同时并发访问同一个数据库的情况下,如果不对用户的并发访问任何控制,在很大程度上会引起数据的不一致性问题,如“丢失”、“脏读”等。 并发控制:合理组织调度多个用户的并发操作,避免产生数据的不一致现象的工作。 在数据库中正是通过并发控制技术来维护在多用户并发访问情况下的数据的一致性。