四川大学期末考试试题(闭卷)A(2011—2012学年第1学期)课程名称:数据库系统原理一.选择题。(每小题2分,共12分)1.以下不是事物性质的是()A.持久性B.原子性C.可串行性D.一致性2.以下封解锁序列中,满足两段锁协议的是()A.Lock-X(U)…Lock-S(V)…Lock-S(W)…Unlock(U)…Unlock(W)…Unlock(V)B.Lock-X(U)…Unlock(U)…Lock-S(V)…Unlock(V)…Lock-S(W)…Unlock(W)C.Lock-X(U)…Lock-S(V)…Unlock(U)…Unlock(V)…Lock-S(W)…Unlock(W)D.Lock-X(U)…Unlock(U)…Lock-S(V)…Lock-S(V)…Unlock(W)…Unlock(W)3.以下关于死锁的说法中正确的是()A.两段锁协议可避免死锁B.DBMS一般采用超时法检查死锁C.死锁是由于持锁事务重启后造成的D.系统中至少有两个并发事务才可能发生死锁4.当事务获得数据项Q的排他锁后,该事务()A.只能读QB.只能写QC.既能读Q,又能写QD.既不能读Q,也不能写Q5.如果一个系统关系模式仅有两个属性,则该关系模式至少满足()A.INFB.2NFC.3NFD.BCNF6.在数据局设计中,画ER图是()的主要任务A.需求分析阶段B.概念结构设计阶段C.逻辑结构设计阶段D.物理结构设计阶段二.简答题。(每小题6分,共12分)1.什么是数据库系统的三级模式结构?它是如何保证数据独立性的?2.某校一数据库系统在运行过程中由于电源故障而停机,经检查,包括存储介质在内的硬件系统均未损坏。对于DBMS来说,这属于什么类型的故障?应该如何恢复?三.查询题。(每小题6分,共36分)1.考虑如下某公司HR(人力资源)系统的关系模式,其中主码下标有下划线:Employee(employee-id,name,address)//员工(员工编号,姓名,住址)Department(department-id,name)//部门(部门编号,部门名)Works(employee-id,department-id,begin-date,end-date)//工作(员工编号,部门编号,开始工作日期,离职日期)请注意:Works表记录了员工在不同时间段在公司各部门工作的履历,如果离职日期(end-date)为空,表明该员工目前仍在此部门工作。以下1-2要求写出关系代数查询。1.查询“t1003”号员工工作过的各部门部门编号和部门名;2.查询在“t1003”号员工工作过的所有部门都工作过的员工的编号及其姓名;以下3-6要求写出SQL查询:3.查询“t1003”号员工工作过的各部门部门编号和部门名;4.查询所有姓名为“王勇”的员工工作过的部门编号和部门名;5.查询在“t1003”号员工工作过的所有部门都工作过的员工的编号及其姓名;6.查询目前在职员工人数最多的部门编号。四.判断下面的关系模式最高处于第几范式(直至BCNF)?要求说明理由。(每小题5分,共10分)1.R1U,FU={U,V,W},F={(U,V)→W,W→V}2.学院(学院编号,学院名,院长,学院联系电话),一个学院有且仅有一位院长,但有多部联系电话。五.设计题(共20分)请为一家社保医院设计数据库管理系统,管理如下信息:①医生,包括编号,姓名,出生日期,职称等信息。②病人,包括身份证号,姓名,性别,出生日期,住址等。系统还应管理参加了医疗保险的病人的医保账户信息,包括医保号、账户余额等。③一位医生可以为多位病人分别进行多次治疗,包括治疗的开始日期,结束日期,描述和产生的费用等。每次治疗只仅由一位医生负责。如果医保账户的余额足够的话,参加了医疗保险的病人的治疗产生的费用可直接用账户余额支付。因此,治疗还应关联相关的医保账户。根据上述描述,充分利用常识,完成以下要求:1.划出此系统的E-R图。(8分)2.根据ER图,设计一组至少满足3NF的关系模式,且要求描述相应的主码和外码约束。(8分)3.在你设计的关系模式下用SQL完成查询:找出姓名为“王大明”的医疗参保人员在该医院所进行的全部治疗的开始日期,结束日期,费用和主治医生姓名。(4分)六.查询优化题(共10分)设有下面的关系模式:Student(sno,sname,sdept)Course(cno,cname,credit)SC(sno,cno,grade)请写出如下SQL查询的关系代数表示,并用关系代数表达式的优化算法对其进行优化,要求画出初始语法树和优化后的语法树。SELECTsnameFROMStudent,Course,SCWHEREStudent.sno=SC.noANDSC.no=Course.cnoANDcname=’DB’ANDsdept=’MA’;