关系数据库与SQL语言模拟试题(B ) 参考答案.doc
关系数据库与SQL语言模拟试题(B )答案一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题末的括号内。每小题1.5分,共24分)1. 1级封锁协议加上T要读取的数据R加S锁,读完释放S锁,这是( C ) A. 3级封锁协议 B. 4级封锁协议 C. 2级封锁协议 D. 1级封锁协议2.要保证数据库逻辑数据独立性,需要修改的是( C )A.模式 B.模式与内模式的映射C.模式与外模式的映射 D.内模式3.在数据库设计中使用E-R图工具的阶段是( D )。 A.需求分析阶段 B.数据库物理设计阶段 C.数据库实施 D.概念结构设计阶段4.反映现实世界中实体及实体间联系的信息模型是( D )A.关系模型 B.层次模型 C.网状模型 D.E-R模型5.关系代数表达式的优化策略中,首先要做的是( B )A.对文件进行预处理 B.尽早执行选择运算 C.执行笛卡儿积运算 D.投影运算6.下列四项中,必须进行查询优化的是( A ) A.关系数据库 B.网状数据库 C.层次数据库 D.非关系模型7.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( C ) A.多对多 B.一对一 C. 多对一 D.一对多8.如何构造出一个合适的数据逻辑结构是( C )主要解决的问题。A.关系数据库优化 B.数据字典 C.关系数据库规范化理论 D.关系数据库查询9.要保证数据库物理数据独立性,需要修改的是( B ) A.模式 B.模式与内模式的映射 C.模式与外模式的映射 D.内模式10.下面哪一个子句能够用条件限定记录的分组?( D )A. FROMB. WHEREC. SELECTD. HAVINGE. GROUP BYF. ORDER BY二、填空(每空1分,共12分)2.实体完整性规则规定基本关系的所有主属性(非空)。3.我们通常把(层次)和网状模型称为非关系模型。4.数据库系统的核心是(DBMS)。5.实体之间的联系按照联系方式的不同可分为(1:1)、(1:n)、(m: n)。6.当数据库被破坏时,利用(日志文件)和(数据库副本)可以有效地恢复数据库。四、SQL程序设计题(每小题3分,共24分) 1. 对于教学数据库的三个基本表S(SNO,SNAME,AGE,SEX,SDEPT) SC(SNO,CNO,GRADE) C(CNO,CNAME,CDEPT,TNAME) 试用SQL的查询语句表示下列查询 (1)检索年龄大于23岁的男生的学号与姓名 答:select sno, sname from s where sage>23 and sex=男 (2)检索至少选修两门课程的学生学号 答: select sno from sc first, sc second where first.sno=second.sno and o!=o (3)检索wang同学不学的课程的课程号 答:selelct cno from sc where cno not in (select cno from scwhere sno=(select sno from s where sname=wang)(4)统计有学生选修的课程门数 答:select count(distinct cno) as 课程门数 from sc(5)检索姓名以wang打头的所有学生的姓名和年龄 答:select sname,sage from s where sname like wang%(6)往基本表S中插入一个学生元组(S9,WU,18) 答:insert into s(sno,sname,sage) values(S9,WU,18) 2.假设某“仓库管理”关系模型有下列五个关系模式:零件PART(PNO,PNAME,COLOR,WEIGHT)项目PROJECT(JNO, JNAME, DATE)供应商SUPPLIER(SNO,SNAME,SADDR)供应P_P(JNO,PNO,TOTAL)采购P_S(PNO,SNO,QUANTITY)(1)试用SQL DDL语句定义PART、P_S、SUPPLIER三个基本表,并说明主键和外键 答:create table part (pno char(10) primary key, pname varchar(10),color varchar(4),weight int) create table supplier( sno char(10) primary key, sname varchar(12), saddr varchar(20)create table p_s (pno char(10) foreign key references part(pno), sno char(10) foreign key references suppliers(sno), quantity int) (2)试将PART、P_S、SUPPLIER三个基本表的自然连接定义为一个视图VIEW2。 答: create view view2 as select part.PNO,PNAME,COLOR,WEIGHT, supplier.SNO,SNAME,SADDR,quantity from part,supplier,p_swhere p_s.pno=part.pno and p_s.sno=supplier.sno3.六、综合题(20分)1.设某商业集团数据库中有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;商店与职工之间存在着“聘用”联系,每个商店有多个职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。试画出E-R图,并在图上注明属性、联系的类型。(5分)(E-R图如下)商店号商店名数量月销售量待添加的隐藏文字内容3商品商店m销售nn商品名商品号聘期月薪聘用n职工职工名职工号2.设关系模式R(A, B, C), F是R上成立的FD集,F=C->B,B->A。(6分) (1)试说明R 不是3NF模式的理由。 答:因为C->B,B->A,所以A传递依赖于C,因此R不是3NF模式 (2)试把R分解成3NF模式集。 答: 把R分解为: R1(C,B), F1C->B R2(B, A), F2(B->A) 则R1, R2均为3NF模式集 3.在ER模型中,如果实体间是M :N的联系,如何设计相应部分的关系模型?(3分) 答:如果实体间是M :N的联系,则将联系类型也转换成关系模式,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合。