《天津大学_数据库原理_本科生_期末试题+答案_试卷A(15页).doc》由会员分享,可在线阅读,更多相关《天津大学_数据库原理_本科生_期末试题+答案_试卷A(15页).doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共 7 页 第 1页2006 2007 学年第 2 学期本科生期末考试试卷 数据库原理 (A卷 共 页)(考试时间:2007 年 7 月 3 日)题号一二三成绩核分人签字得分请将选择题的答案填写在下面的表格中1C2D3D4A5B6D7B8D9B10B11B12C13B14B15D16C17C18B19B20C21A22D23D24C25D26B27B28D29B30B31C32C33D34D35A36D37C38C39B40C41A42B43BC44BD45AB46D47CD48CD49A50ABD一、单项选择题(40题,每
2、题1分)1. 关于数据库管理系统下面哪个描述是最正确的 C A.数据库管理系统是数据的集合. B.数据库管理系统是数据的集合,并且存储着数据与数据之间的关系. C.数据库管理系统是由一个互相关联的数据的集合和一组用以访问这些数据的程序组成. D.数据库管理系统是由数据的集合和一组用以访问这些数据的程序组成2. 下面那项不是数据库管理系统组成部分: D A. 事务管理器 B.查询处理器. C. 存储管理器D.进程控制器.3.如果有两个关系T1,T2.客户要求每当给T2删除一条记录时,T1中特定记录就需要被改变,我们需要定义什么来满足该要求. DA.在T1上定义视图 B.在T2上定义视图 C.在T
3、1和T2上定义约束D.定义trigger4. 关于数据库事务描述不正确的是 AA. 一个事务中的所有对数据库的改变可以部分完成和部分不完成.B. 一个事务中的所有对数据库的改变必须全部完成或全部不完成. C. 数据库的事务是不可以再次划分的.D. 如果事务在完成前被中断,数据库管理系统能把那些由未完成事务所产生的数据变化从数据库中恢复5. 某个企业的数据库包含以下信息:员工(由员工编号唯一确定,记为ssn),部门(由部门编号唯一确定记为did)员工工作在部门中,每个部门最多有一个管理者.下面哪个ER图能够正确的反映管理关系. B6.关于视图的描述下面说法哪些是正确的: D A. 数据库即存储视
4、图的定义也存视图的数据.B. 用带有聚集运算的SQL创建的视图是可更新视图C. 用带有group by字句的SQL创建的视图是可更新视图D. 视图可以能在多个关系上创建天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共7 页 第 2页7. 某个企业的数据库包含以下信息.员工(由员工编号唯一确定,记为ssn),员工的子女(属性为name,age),在双亲给定的情况下,每个孩子能由他的姓名唯一确定(假设他们的双亲中只有一个是公司的员工).一旦员工离开公司,那么企业不再对其子女信息感兴趣.下面哪个ER图能够正确的反映以上需求 B8.如果将下面的ER图转换成数据库中的关系,那么在数
5、据库中需要定义. D A. 2个关系B. 3个关系C. 3个关系 ,1个断言D. 2个关系,1个断言9. 如果将下面的ER图转换成数据库中的关系(该ER图中要求员工的年龄在18到55岁之间),那么在数据库中至少需要定义. BA. 3个关系,1个断言B.2个关系,1个约束C.3个关系D.2个关系10. 我们在一个关系中 B A.必须定义一个主关键字B.只能创建一个聚集索引(cluster index) C.只能创建一个稠密索引D.只能定义一个约束.11. 在DBMS的关系中 B A.关键字属性值可以为空B.外关键字属性值可以为空 C.任何属性值都可以为空D.任何属性值都不可以为空.12. 下面关
6、于外关键字描述不正确的是 CA.外关键字必须是所参考表的主关键字. B.外关键字属性必须与参考的属性是相同的数据类型C.定义外关键字需要对所参考表拥有select权D.一个表中可以有多个外关键字.13. 我们在DBMS中记录数据库员工和员工工作信息,要求当某个员工离职后,数据库需要自动删除该员工的工作信息,在定义工作表时我们对于外关键字的删除规则应定义为 BA. ON DELETE ROLLBACK B. ON DELETE CASCADEC.ON DELETE SET NULL D.ON DELETE NO ACTION14. 在DBMS中执行GRANT update(col1) ON TA
7、BLE t.t1 TO user7,对于该语句下面哪个描述是正确的: BA.user7可以在t1上定义视图B.user7可以更新t1中的col1属性的值C.user7在创建其他表时可以定义参考于t1中col1属性的外关键字D.user7可以在t1中定义外关键字.天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共 7页 第3页15. 关系模式R,R的属性集是ABCDEG有函数依赖集F=ABC , CA, BEC, BCD , CGBD计算(AB)的属性闭包.DA. BDEGB. BDCC. ABCDEGD. ABCD16. staff的定义如下 Cid INTEGER nam
8、e CHAR(20) dept INTEGER job CHAR(20) years INTEGER salary DECIMAL(10,2) comm DECIMAL(10,2)下面哪个语句可以按照job和salary的升序排序来返回所有员工的信息.A. SELECT id,name,salary,dept,job,years,comm FROM staff ORDER BY 4,6 B. SELECT id,name,salary,dept,job,years,comm FROM staff GROUP BY 4,6 C. SELECT id,name,salary,dept,job,ye
9、ars,comm FROM staff ORDER BY 5,3 D. SELECT id,name,salary,dept,job,years,comm FROM staff GROUP BY 5,317. 关系模式Sailors(sid,lastname.firtname,age,ratring)其中lastname允许为空. 下面哪个语句能够查找出lastname属性值不为空的水手信息. C A. SELECT * FROM SAILORS WHERE LASTNAMENULL B. SELECT * FROM SAILORS WHERE LASTNAMENULL C. SELECT *
10、 FROM SAILORS WHERE LASTNAME IS not NULL D. SELECT * FROM SAILORS WHERE LASTNAME not LIKE NULL18. 关系模式Sailors(sid,sname,age,ratring)下面哪个语句能够查找出sname属性值至少为四个字符长,并且开始和结束字符都是B的水手信息. BA.SELECT * FROM SAILORS WHERE sname like B%_BB.SELECT * FROM SAILORS WHERE sname likeB_%BC. SELECT * FROM SAILORS WHERE
11、sname like B?*BD. SELECT * FROM SAILORS WHERE sname likeB*?B19.有关系模式R(A,B,C,D,E),R的函数依赖集F=A-BC,CB-E,B-D,E-A下面哪个分解具有无损连接性. B A. (A,D,C),(A,B,C)B. (A,B,C),(B,C,D,E) C. (A,B,D),(C,D,E)D. (B,C,D),(A,D,E)20.有关系模式R(A,B,C)和三个合法实例(6,4,6),(6,4,6),(7,4,8),下面哪个函数依赖在关系模式R上不成立 C A. A-BB. BC-AC. B-CD. C-A. 21.设有关
12、系模式R(B,I,S,Q,D),其上函数依赖集F=SD,IB,ISQ,BQ,BI下面那些是R的关键字. AA.ISB.IBC.IQ D.ISB22.下面哪个改变可以通过alter table实现 DA. 增加一个触发.B. 增加一个索引.C. 增加一调记录 D. 定义一个候选关键字23.下面的语句按顺序成功执行后 CREATE TABLE tab1 (c1 CHAR(1) INSERT INTO tab1 VALUES (b) CREATE VIEW view1 AS SELECT c1 FROM tab1 WHERE c1 =a INSERT INTO view1 VALUES (a) IN
13、SERT INTO tab1 VALUES (b) 执行SELECT c1 FROM tab1可以选择出多少条记录 D A.0B.1C.2D.324.有一个关系模式employee(name,department,phone_number),下面哪句话允许user1可以修改phone_number列的值 CA. GRANT MODIFY (phone_number) ON TABLE employee TO user1B. GRANT ALTER (phone_number) ON TABLE employee TO user1C. GRANT UPDATE (phone_number) ON
14、 TABLE employee TO user1 D. GRANT REFERENCES (phone_number) ON TABLE employee TO user125.数据库中SAILORS表是由joe创建的.在DBMS完成下面的语句后 D Grant select on Sailors To Art With Grant optionJoe执行 Grant select,update on Sailors To Bob With Grant optionJoe执行 Grant select on Sailors To Bob With Grant optionArt执行 Revok
15、e select on Sailors From Art CascadeJoe执行 Bob对Sailors表拥有 A. select权B. Update权C.没有任何权利D.select和Update权天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共7页 第4页26.在使用数据库中使用索引的目的是: B A.提高数据文件的存储率.B.可以更加有效的控制事务处理中的幻影问题. C.增加DBMS的安全性.D.提高增加记录的效率.27.下面哪种文件格式对不等值搜索的效率最高 B A.无序文件B.排序文件C.哈希文件D.队列文件28.下面关于主关键字描述不正确的是: DA.在表中
16、可以通过主关键字唯一的确定一条记录.B.主关键字可以由多个属性组成.C.组成主关键字的属性值不能空. D.一个表中可以有多个主关键字29.关于第三范式描述正确的是 BA.一个关系属于第第一范式,它就属于第三范式B. 一个关系模式属于BC范式,它就属于第三范式C. 一个关系实例有数据冗余,它就是属于第三范式 D.一个关系实例没有数据冗余,它就是属于第三范式30.下面哪个调度是串行调度: BA. T1:R(A),T2:R(B),T2:W(B),T1:W(A)B. T1:R(B),T1:W(B),T2:R(A), T2:W(A)C. T1:R(A),T2:R(B),.T1:W(A),T2:W(B)D
17、. T2:R(A),T1:R(B),.T1:W(A),T2:W(B)31.下面关于数据库事务处理描述错误的是: CA. 原子性:表示的是事务的所有操作在数据库中要么全部正确反映出来要么全部不反映.B. 一致性:事务在执行前如果数据库是一致性的那么执行后也是一致性的.C. 隔离性:事务在执行过程中可以感觉到系统中其他事务的执行D. 持久性:一个事务成功完成后,它对数据库的改变必须是永久的,即使是系统出现故障时也如此.32. 下面关于数据库事务处理描述正确的是: CA. 原子性和一致性是由数据库的并发控制保证的.B. 隔离性和持久性是由数据库的并发控制保证的.C. 原子性和持久性是由数据库的恢复系
18、统保证的D. 一致性和隔离性是由数据库的恢复系统保证的33.数据库系统的log中检查点的作用是: DA. 系统事务取消时数据库关系系统需要重检查点开始取消.B. 系统事务正确完成时数据库系统会在log中设置检查点.C. 数据库重新启动时恢复系统中的重做阶段从检查点开始.D. 数据库重新启动时恢复系统中的分析阶段从检查点开始34. 下面哪个说法符合数据库系统WAL(log先写协议): DA. 数据库内存中被事务修改的页面在事务成功完成时被强制写到磁盘中B. 数据库内存中被事务修改的页面在事务撤销时被写到标记为非脏页C. 事务成功完成时不需要将与其相关的log页面强制写回磁盘D. 事务中被修改的内
19、存数据页面在写回磁盘前必须将与其相关的log写回磁盘35.一个企业提供了一个查询数据库,该数据库的数据可以很容易的重新构造.为了提供数据库中磁盘数据的访问速度,下面磁盘技术中采用哪种方法可以满足该要求: AA. RAID 0B.RAID 1C. RAID 0+1D.RAID 536.一个企业有大量的数据需要存储在数据库中,企业要求数据的稳定性存储和数据开速访问,但不想使用太多的磁盘进行冗余存储,下面磁盘技术中采用哪种方法可以满足该要求: DA. RAID 0B.RAID 1C. RAID 0+1D.RAID 537.在JDBC提供的数据库编程方法中提供了几种JDBC和数据库的连接方法: CA.
20、5B.2C.4D.138.下面哪些说法是正确的: CA在死锁预防中,等待-死亡法是中止优先级高的事务B在死锁预防中,受伤-等待法是优先级高的事务可能等待优先级低的事务释放锁C使用死锁预防的系统中不会出现死锁。D使用死锁判断的系统会不会出现死锁。39.下面那个说法正确的是 BA. 在嵌入式SQL编程中所有的查询都必须使用游标。B. 如果内存中的某一页的pin_count=0,dirty=true,则该页在替换时该页的数据必须写会磁盘。C. Create table tab1( a int, b int ,c int ,primary key (a,b) create table tab2(a i
21、nt , c int, d int, foreign key(a) reference tabl(a)语句可以在DBMS中执行成功D. 如果关系模式R的每一个函数依赖XA都使得下面两个条件中的一个成立则该关系模式满足BC范式。条件:1.XA是平凡函数依赖 2.X是一个关键字天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共7页 第5页40.数据库系统管理员按照事务的方式执行下面的语句:C Create table tab1 (a int,b int) insert into tabl values(1,2) insert into tab2 values(2,3) comm
22、it Insert into tab1 values(2,3) Insert into tab1 values(1,6) Commit Delete from tab1 where a=1 Insert into tab1 values(1,7) Delete from tab1 where a=1 Insert into tab1 values(1,8) 数据库系统突然崩溃,系统重新启动后,该管理员执行 Select count(*) from tab1 数据库系统的输出是多少:A. 6B.3C.4D.5二.不定项选择题(10题,每题2分)41下面关于索引说法正确的是: AA. 聚集索引必然
23、是稠密索引B. 在数据库中只能创建一个稀松 C. 在数据库中只能创建一个聚集索引 D. 索引文件中一定不包括记录的详细数据42.有关系模式R(A,B,C,D,E),R的函数依赖集F=A-B,BC-E,ED-A,下面哪个说法是正确的: B A.R是BCNF B.R是1NFC.分解(ACD,BCE)是无损分解D.分解(ABD,CDE)是无损分解43.有关系模式R(A,B,C,D)下面哪个函数依赖集使得R索引不是BCNF BCA. F=AB-CD,C-ABD B. F=ABC-D,D-A C. F=B-C,D-AD. F=AB-C,C-D,C-AB44.下面关于数据库事务并发调度正确的是 BDA.
24、冲突可串行化调度一定是观测可串行化调度B. 冲突可串行化调度一定与某种串行调度的结果一样.C. 观测可串行化调度调度可以通过画图来判断D. 冲突可串行化调度可以通过画图来判断45.有两个关系TAB1,TAB2TAB1 TAB2 C1 C2 CX CY - - - - A 11 A 21 B 12 C 22 C 13 结果集如下C1 C2 CX CY - - - - A 11 A 21 C 13 C 22哪个SQL语句能够生成该结果 ABA. SELECT * FROM tab1 right OUTER JOIN tab2 ON c1=cx B. SELECT * FROM tab1 INNER
25、 JOIN tab2 ON c1=cxC. SELECT * FROM tab1 FULL OUTER JOIN tab2 ON c1=cxD. SELECT * FROM tab1 LEFT OUTER JOIN tab2 ON c1=cx46下面视图定义是中哪个是可更新视图 DA. Create view V1 as select S.rating , max(S.age) as avgage from Sailors S group by S.ratingB. Create view V2 as select * from saliros S1 where S.age18 expect
26、select * from sailors S2 where S2.name like %TomC. Create view V3 as select S.name, B.bname from Sailor, Boats where S.sid=B.sidD. Create view V4 as select * from Bailors B where B.name is not null47 下面哪个SQL正确表示查找红色船被订船情况. CDA. Select * from Reserves R,Boat B where R.bid=B.bid and b.color=redB. Sele
27、ct * from Reserves R, inner join Boats B on R.bid=B.bid where b.color=redC. Select * from Reserves R, right outer join Boats B on R.bid=B.bid and b.color=redD. Select * from Reserves R, full outer join Boats B on R.bid=B.bid and S.age1748.下面说法正确的是: CDA.在任何情况下严格的2PL锁能够保证调度的可串行化.B.在一个表作查询时需要先给符合条件的查询上
28、记录加上S锁然后给表加上IS锁.C.在一个表作查询时需要先给表加上IS锁然后给符合条件的查询上记录加上S锁D.在一个表上同时可以加上IS锁和IX锁天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共7页 第6页49.下面哪个调度会出现死锁: AA.T1:R(X),T2:W(X),T2:W(Y),T3:W(Y),T1:W(Y),T1:Commit, T2:Commit, T3:CommitB T1:R(X),T2:W(Y),T2:W(X),T3:W(Y),T1:W(Y), T1:Commit, T2:Commit, T3:CommitC T1:R(A),T2:W(B),T1:R
29、(A),T3:R(C),T2:W(C),T4:W(A),T3:W(B)D.T1:R(A),T2:W(B),T3:W(C),T1: Commit,T2:W(A), T2:Commit,T3:W(B), T3:Commit50.下面哪个调度是冲突可串行的调度 ABDA. T1:R(X),T1:R(Y),T1:W(X),T2:R(Y),T3:W(Y),T1:W(X),T2:R(Y)B. T1:R(X),T2:R(Y),T3:W(X),T2(R(X),T1:R(X)C. T1:R(X),T2:R(X),T1:W(X),T2:W(X)D. T1:W(X),T2:R(Y),T1:R(Y),T2:R(X)三
30、简答题(40分)有关系有关系模式Sailors(sid:integer,sname:string,rating:integer),Boats(bid:interger,bname:string,color:string)Reserves(sid:integer,bid:integer,day:datetime)各关系模式的关键字用下划线表示,其中Reserver的关键字中sid来自Sailors,bid来自Boats,Reserver的记录表示水手的订船记录。1.请用关系代数表达式写出下面的查询(4分) 查找只定过同一艘船的水手的sid。2.用元组关系演算表达式写出下面的查询(2分) 查找定了
31、红色船的水手的sid3请用SQL语句写出下面的查询(16分) 1) 查找订过红色船或订过绿色船水手的姓名(3分)Select s.sname from sailors s,reserves r,boats b Wherer s.sid=r.sid and r.bid=b.bid and (b.color=red or b.color=green)2)将水手按级别(rating)分组,查找平均年龄最小的级别组(6分)Select temp.rating,temp.avg_ageFrom (select rating,avg(age) as avg_age from sailors Group b
32、y rating) as tempWhere temp.avg_age=select min(temp1.avg_age) from temp temp13) 查找定了所有红色船的水手的姓名(6分)Select s.sname from sailors swhere not exists( select b.bid from boats b where b.color=red except Select r.bid from reserves r where r.sid=s.sid)天津大学试卷专用纸学院 计算机学院 专业 班 年级 学号 姓名 A卷共7页 第7页4有关系模式employees
33、(ssn:char(10),name:char(20),age:int),其中ssn是employees的主关键字,departments(did:char(5),dname:char(20), 其中did是departments的主关键字.work_in( ssn:char(10),did:char(5),from:date,to:date), 其中(ssn,did,from,char)是work_in的主关键字,did,ssn分别是指向deparments,employess的外关键字。表示员工在某段时间内工作与某个部门。另外还要求每个的员工都要工作与某个部门,每个部门都要有人工作。请用S
34、QL语句创建work_in关系,并表达出每个的员工都要工作与某个部门,每个部门都要有人工作这个约束条件。(5分)Create table work_in( ssn char(10), did char(10), from date, to date, primary key(ssn,did,from,to), foreign key ssn reference employees, foreign key did reference departments)create assert e_d( check(select count(*) from departments=select coun
35、t(distinct did) from work_in) and check(select count(*) from employees=select count(distinct sid) from work_in) )5请用Armstrong公理证明,若XY,YZ.则XZ(5分)根据函数依赖的定义:因为XY,YZ成立所以对于关系模式R的任意一个实例中的任意两个元组t1,t2.如果t1.X=t2.X那么t1.Y=t2.Y.如果t1.Y=t2.Y 那么t1.Z=t2.Z.所以对于任意的两个元组t1,t2 当t1.X=t2.X 则t1.Z=t2.Z所以XZ6.设有关系模式R,F=AC,CA,
36、BAC,DAC,BDA是R的函数依赖集(8分)1)请求出R的函数依赖最小集(5分)先将函数依赖的右边变成单个属性F= AC,CA ,BA,BC,DA,DC,DBA出去函数依赖左边的多于属性因为AC,CA ,BA,BC,DA,DC左边都是单个属性不用检查对于DBA,除去D后,B的属性闭包=BAC 包括A 所以D是多余属性则DBA变成,BA所以函数依赖集变为F1= AC,CA ,BA,BC,DA,DC除去多余的函数依赖a. 去掉AC 在F1-AC中 A的属性闭包=A 所以AC不是多于依赖b. 去掉CA 在F1-CA中 C的属性闭包=C 所以CA不是多于依赖c. 去掉BA 在F1-BA中 B的属性闭包=BCA 所以BA是多于依赖F1= AC,CA , BC,DA,DCd. 去掉BC 在F1-BC中 B的属性闭包=B 所以BC不是多于依赖e. 去掉DA 在F1-DA中D的属性闭包=DCA 所以DA是多于依赖F1= AC,CA , BC,DCR的函数依赖最小集是 F= AC,CA , BC,DC2)找出一个关键字,并证明其是关键字(3分)BD是一个关键字.因为BD的属性闭包=BDCA 是R的属性全集B的属性闭包是BCA不是R的属性全集D的属性闭包是DCA不是R的属性全集这样不存在BD的真子集也能是的该真子集的属性闭包是R的属性全集所以BD是R的关键字-第 15 页-