广东工业大学06与07数据库原理与设计A卷.docx
《广东工业大学06与07数据库原理与设计A卷.docx》由会员分享,可在线阅读,更多相关《广东工业大学06与07数据库原理与设计A卷.docx(14页珍藏版)》请在冰豆网上搜索。
![广东工业大学06与07数据库原理与设计A卷.docx](https://file1.bdocx.com/fileroot1/2023-1/29/8b59a38f-cd3d-414b-a41f-29e9b3209a17/8b59a38f-cd3d-414b-a41f-29e9b3209a171.gif)
广东工业大学06与07数据库原理与设计A卷
广东工业大学考试试卷(A)
参考答案及评分标准
课程名称:
数据库原理及应用(2006-2007年度第一学期)
考试时间:
第15周星期二(5月30日)
一、选择填空题(每题1.5分,共30分)
1、数据库系统阶段,数据______B_________。
A)具有物理独立性,没有逻辑独立性B)具有物理独立性和逻辑独立性
C)独立性差D)具有逻辑独立性,没有物理独立性
2、数据库系统的体系结构是C。
A)二级模式结构和一级映像B)三级模式结构和一级映像
C)三级模式结构和二级映像D)三级模式结构和三级映像
3、在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的
是D。
A)外模式B)内模式
C)存储模式D)模式
4、数据库的概念模型独立于A。
A)具体的计算机系统和DBMSB)E-R图
C)信息世界D)现实世界
5、需求分析阶段得到的结果是___A_____。
A)数据字典描述的数据需求B)E-R图表示的概念模型
C)某个DBMS所支持的数据模型D)包括存储结构和存取方法的物理结构
6、概念结构设计阶段得到的结果是___B_____。
A)数据字典描述的数据需求B)E-R图表示的概念模型
C)某个DBMS所支持的数据模型D)包括存储结构和存取方法的物理
7、在下列关于关系的陈述中,错误的是B
A)表中任意两行的值不能相同B)表中任意两列的值不能相同
C)行在表中的顺序无关紧要D)列在表中的顺序无关紧要
8、一个关系:
DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHEREDNAMELIKE____B_____
A)‘__W_%’B)‘_%W__’
C)‘_W__’D)‘_W_%’
9、数据库中只存放视图的____C_______。
A)操作B)对应的数据
C)定义D)限制
10、有一个关系:
学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于_____C______。
A)实体完整性约束B)参照完整性约束
C)用户自定义完整性约束D)关键字完整性约束
11、设属性A是关系R的主属性,则属性A不能取空值(NULL),这是A
A)实体完整性约束B)参照完整性约束
C)用户自定义完整性约束D)关键字完整性约束
12、已知成绩关系如下图所示。
学号
课程号
分数
S1
C1
80
S1
C2
75
S2
C1
null
S2
C2
55
S3
C3
90
执行SQL语句:
SELECTCOUNT(DISTINCT学号)FROM成绩WHERE分数>60
查询结果中包含的元组数目是B
A)1B)2
C)3D)4
13、一个实体型转换为一个关系模式。
关系的码为____A____。
A)实体的码B)二个实体码的组合
C)n端实体的码D)每个实体的码
14、一个m:
n联系转换为一个关系模式。
关系的码为____B____。
A)某个实体的码B)各实体码的组合
C)n端实体的码D)任意一个实体的码
15、设关系R和S的元组个数分别为100和300,关系T是R与S的笛卡儿积,则T的元组个数是______C_____。
A)400B)10000
C)30000D)90000
16、已知关系:
厂商(厂商号,厂名);产品(产品号,颜色,厂商号),外码FK=厂商号
假设两个关系中已经存在如下图所示元组:
依据参照完整性规则,
厂商号
厂名
C01
宏达
C02
立仁
C03
广源
厂商产品
产品号
颜色
厂商号
P01
红
C01
P02
黄
C03
若再往产品关系中插入如下元组:
能够插入的元组是____D____。
I:
(P03,红,C02)II:
(P01,蓝,C01)破坏实体完整性
III:
(P04,白,C04)IV:
(P05,黑,null)
A)I,II,IVB)I,III
C)I,IID)I,IV
17、已知关系R如图1所示,可以作为R主码的属性组是(B)
A
B
C
D
1
2
3
4
1
3
4
5
2
4
5
6
1
4
3
4
1
3
4
7
3
4
5
6
R
A)ABCB)ABD
C)ACDD)BCD
18、下列聚合函数中不忽略空值(NULL)的是C
A)SUM(金额)B)MAX(成绩)
C)COUNT(*)D)AVG(成绩)
19、现有借阅关系表:
借阅(书号,书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本。
则该关系模式的键是D
A)书号B)读者号
C)书号,读者号D)书号,读者号,借期
20、关系数据模型的三要素中不包括C
A)完整性规则B)数据结构
C)恢复D)数据操作
二、问答题(共22分)
1、什么是数据的独立性?
数据库系统中为什么能具有数据独立性?
(8分)
答:
数据的独立性是指逻辑独立性和物理独立性。
(2分)数据的逻辑独立性是指当数据的总体逻辑结构改变时,数据的局部逻辑结构不变,由于应用程序是依据数据的局部逻辑结构编写的,所以应用程序不必须修改,从而保证了数据与程序间的逻辑独立性(1分)。
数据的物理独立性是指当数据的存储结构改变时,数据的逻辑结构不变,从而应用程序也不必改变(1分)。
原因:
1)内模式映象保证了数据的物理独立性,如存储结构变化时,模式/内模式映象也应有相应的变化,使其概念模式仍保持不变,即把存储结构的变化的影响限制在概念模式之下,这使数据的存储结构和存储方法较高的独立于应用程序,通过映象功能保证数据存储结构的变化不影响数据的全局逻辑结构的改变,从而不必修改应用程序,即确保了数据的物理独立性。
(2分)
2)外模式/模式映象保证了数据的逻辑独立性。
该级保证了数据的局部逻辑结构不变,由于应用程序是依据数据的局部逻辑结构编写的,所以应用程序不必须修改,从而保证了数据与程序间的逻辑独立性。
(2分)
2、简述关系数据库中基本表的6个性质。
(7分)
答:
1、同一关系中各个属性具有同质性;
2、同一关系中列顺序无关性
3、同一关系中元组具有无冗余性;
4、同一关系中,属性名具有唯一性;
5、同一关系中,元组顺序具有无关性;
6、关系中每一分量必须是不可分的数据项(1分)
3、试述关系模型的完整性规则。
(7分)
答:
为了维护数据库中数据与现实世界的一致性,对关系数据库的插入、删除和修改操作必须有一定的约束条件,这就是关系模型的三类完整性:
1、实体完整性:
是指主码的值不能为空或部分为空;(2分)
2、参照完整性:
如果关系R2的外码X与关系R1的主码相符,则X的每个值或者等于R1中主码的某一个值,或者取空值;(3分)
3、用户定义的完整性:
用户定义完整性是针对某一具体关系数据库的约束条件。
它反映某一具体应用所涉及的数据必须满足的语义要求。
(2分)
三、分析设计题(共48分)
(1)设有如下关系表R:
R(NO,NAME,SEX,AGE,CLASS),写出实现下列功能的SQL语句。
其中NO为学号(整型),是主码;NAME为姓名(字符型);SEX为性别(字符型);AGE为年龄(整型);CLASS为班号(字符型)。
(1)插入一个记录,学号:
25;姓名:
李明;性别:
男;年龄:
21;班号:
95031;(3分)
insertintoRvalues(25,‘李明’,‘男’,21,‘95031’)
(2)将学号为10的学生姓名改为’王华’;(3分)
updateRsetname=’王华’whereno=10
(3)删除姓’王’的学生记录;(3分)
deletefromRwherenamelike‘王%’
(2)某医院病房计算机管理中需要如下信息:
科室:
科室名,科地址,科电话,医生姓名
病房:
病房号,床位号,所属科室名
医生:
医生姓名,职称,所属科室名,年龄,工作证号
病人:
病历号,姓名,性别,诊断,主管医生,病房号
其中,一个科室有多个病房、多个医生;
一个病房只能属于一个科室,一个医生只属于一个科室
一个医生可负责多个病人的诊治,一个病人的主管医生只有一个。
请完成如下设计:
(1)画出E-R图,并指出其联系类别是1:
1、1:
N,还是M:
N(5分)
拥有
病房
科室
1n
11
入住
工作
nn
负责
病人
医生
1n
(2)将E-R图转换为关系模型,并给出各关系模式中的主码(5分)
解:
科室(科室名,科地址,科电话,医生姓名)
病房(病房号,床位号,科室名)
医生(医生姓名,职称,科室名,年龄,工作证号)
病人(病历号,姓名,性别,诊断,工作证号,病房号)
(3)写出下列SQL语句或关系代数表达式的功能。
1.deletefrombookwhereprice>=35andbooktype='文学'orpublisher='机械工业出版社';(3分)
从book表中删除价格大于等于35并且类型为文学得书籍,并且删除出版社为机械工业出版社的书籍。
2.SELECTCOUNT(DISTINCTSno)FROMSCWHEREGradeISNULL;(3分)
统计没有成绩的学生人数。
3.π学号(学生)-π学号(σ课程号=‘C001’(选课)),其中π为投影算子,σ为选择算子。
(3分)
查询没有选修C001课程的学生的学号。
(4)以下给出三个基本表,并给出各表的记录:
Student(学生表)的字段按顺序为学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所属院系(Sdept);Course(课程表)的字段按顺序为课程编号(Cno)、课程名(Cname)、先行课程(Cpno)、课程学分(Ccredit);SC(选课表)的字段按顺序为学号(Sno)、课程号(Cno)、成绩(Grade)。
1.
写出创建学生表Student的SQL命令,各字段的类型及长度应根据实际情况确定,并确定该表的主码。
其中姓名属性不能为空,性别属性缺省值为’男’,而且年龄限制在16-40之间。
(4分)
createtablestudent(
Snochar(5)notnullprimarykey,
Snamevarchar(8)notnull,
Ssexchar
(2)default‘男’,
SagetinyintcheckSagebetween16and40,
Sdeptvarchar(10)
);
2.利用SQL命令删除李勇同学的学生信息,并做其他必要的删除。
(4分)
deletefromScwhereSno=
(selectsnofromstudentwhereSname=‘李勇’)
deletefromStudentwhereSname=‘李勇’)
3.利用SQL命令查询各个课程号及相应的选课人数,并给出SQL语句运行结果。
(4分)
selectcno,count(sno)as选课人数fromSCgroupbyCno
运行结果:
cno选课人数
11
22
32
4.分别利用SQL命令以及关系代数,查询每个学生的学生姓名,及其选修的课程名和成绩。
(4分)
SQL语言:
SelectSname,Cname,GradefromStudent,Course,SC
WhereStudent.Sno=Sc.SnoandCourse.Cno=Sc.Cno
关系代数:
πSname,Cname,Grade(σStudent.Sno=Sc.Sno∧Course.Cno=Sc.Cno’(Student∞Course∞SC))
5.查询选课在两门课以上,且各门课程均及格的学生的学号及其平均成绩,查询结果按平均成绩降序列出(4分)
selectSno,Avg(Grade)fromScwhereGrade>=60
GroupbySnohavingCount(*)>=2
OrderbyAvg(Grade)DESC
5、数据库系统的最大特点是________。
A.数据的三级抽象和二级独立性B.数据共享性
C.数据的结构化D.数据独立性
6、在关系代数中,五种专门的关系运算符是_____。
A.≥,∞,×,π和σB.∩,-,×,π和σ
C.÷,∞,×,π和σD.∪,-,×,π和σ
7、若系统在运行过程中,由于某种原因,造成系统停止运行,致使所有事务以非正常方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为。
A.事务故障B.系统故障C.介质故障D.运行故障
8、若事务T对数据R已加X锁,则其他事务对数据R。
A.可以加S锁不能加X锁B.不能加S锁可以加X锁
C.可以加S锁也可以加X锁D.不能加任何锁
9、对并发操作若不加以控制,可能会带来问题。
A.不安全B.死锁C.死机D.不一致
10、E-R图是数据库设计的工具之一,它适用于建立数据库的。
A.概念模型B.逻辑模型C.结构模型D.物理模型
11、同一个关系的任意两个元组值。
A.不能全同B.可全同C.必须全同D.以上都不是
12、事务的隔离性是指。
A.事务中包括的所有操作要么都做,要么都不做
B.事务一旦提交,对数据库的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的
D.事务必须是使数据库从一个一致性状态变到另一个一致性状态
13、候选关键字中属性称为。
A.非主属性B.主属性C.复合属性D.关键属性
三、问答题(共10分)
对学生-课程数据库(关系模式参考第七题)有如下的查询:
SELECTCnameFROMStudent,Course,SC
WHEREStudent.Sno=SC.SnoANDSC.Cno=Course.CnoAND
Student.Sdept=‘CS’ANDCourse.Cpno=3;
1、(4分)画出用关系代数表示的语法树。
2、(6分)用关系代数表达式优化算法对原始的语法树进行优化处理,画出优化后的标准语法树。
四、问答题(共9分)
已知关系模式R,其中U={A,B,C,D};
F={D→B,B→D,AD→B,AC→D}
1、(6分)求R的所有候选关键字、主属性和非主属性。
2、(3分)R属于第几范式?
为什么?
五、证明题(共5分)试证明任何一个二目关系是属于BCNF的
六、问答题(共10分)
设有如下实体:
学生(Student):
学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、班级(Class)
课程(Course):
编号(Cno)、课程名(Cname)、开课系(Sdept)
教师(Teacher):
教师号(Tno)、姓名(Tname)、性别(Tsex)、职称(Tpost)
系(Dept):
系名(Dept)、电话(Dtel)、教师号(Tno)、教师名(Tname)
其中学号(Sno)、编号(Cno)、教师号(Tno)、系名(Dept)是不重复的属性。
上述实体中存在如下联系:
·一个学生可选修多门课程,一门课程可为多个学生选修,选修后得到考试成绩(Grade);
·一个教师可讲授多门课程,一门课程可为多个教师讲授;
·一个系有多个教师和学生,一个教师或一个学生只能属于一个系。
·一个系可开设多门课程,一门课程只能为一个系所开设。
试完成如下工作:
1、(6分)根据这段话的意思,画出其E-R图;
2、(4分)将该E-R图转换为等价的关系模型结构,并指出每个关系模式的主码和外码;
七、问答题(共24分)
设有一个学生-课程数据库,包括Student、Course和SC三个关系模式:
学生表Student由学号(Sno),学生姓名(Sname),性别(Ssex),年龄(Sage),所在系(Sdept)组成;
课程表Course由课程号(Cno),课程名称(Cname),先修课程号(Cpno),学分(Ccredit)组成;
学生选课表SC由(Sno),课程号(Cno),成绩(Grade)组成;
设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:
供应商表S由供应商代码(Sno)、供应商姓名(Sname)、供应商状态(Status)、供应商所在城市(City)组成;
零件表P由零件号码(Pno)、零件名(Pname)、颜色(Color)、重量(Weight)组成;
工程项目表J由工程项目代码(Jno)、工程项目名(Jname)、工程项目所在城市(City)组成;
SPJ由供应商代码(Sno)、零件代码(Pno)、工程项目代码(Jno)、供应数量(QTY)组成;
按要求完成下列操作:
1、(3分)把修改供应商姓名和查询零件表P的权限授给用户U1;
2、(3分)统计每门课程的选修人数(超过30人的课程才统计)。
要求输出课程号和选修人数,查询结果按课程号降序排列。
3、(6分)分别用SQL语言和关系代数查询选修了‘数据库原理’(课程名称)且成绩在60分以上的所有学生的学号、姓名和成绩;
4、(3分)用SQL语言查询与“王海”(学生姓名)同学同性别并且同所在系的学生基本信息;
5、(6分)分别用SQL语言和关系代数查询课程名是‘编译原理’(课程名称)的直接先行课的课程号和课程名;
6、(3分)往基本表student中插入一个学生元组,学号为s9,姓名是张三,年龄18岁。