数据库技术基础模拟试题答案Word格式文档下载.docx
- 文档编号:22816531
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:13
- 大小:403.37KB
数据库技术基础模拟试题答案Word格式文档下载.docx
《数据库技术基础模拟试题答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据库技术基础模拟试题答案Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。
二、填空题(共5小题,每小题1分,共5分)
TRUE(T)、FALSE(F)和UNKNOWN(U)作为变量X、Y和Z的全部可能取值,用T、F和U填写下表。
解:
X
Y
Z
(XANDY)OR(NOTZ)
U
T
F
三、解答题(共5小题,每小题4分,共20分)
考虑如下关系表,每个关系的主键用下划线标明。
employee(EID,name,salary,DNo)表示雇员ID、姓名、工资、所在的部门编号。
department(DNo,DeptName,MgrID)表示部门编号、部门名称和该部门的经理ID。
project(PNo,location,ProjName)表示项目的编号、地点、项目名称。
HourLog(EID,PNo,hours)表示雇员(EID)为项目(PNo)工作的小时数(hours)。
假定每个部门只有1个经理,每个雇员可以参加多个项目(包括0个),每个项目至少有1个雇员参加,HourLog关系列出了雇员参加的项目的工作小时数。
或:
SELECTEID,name
FROMemployee
WHEREEIDIN(SELECTEID
FROMHourLog
GROUPBYEID
HAVINGCOUNT(PNo)>
=2);
WHEREEIDIN(SELECTH1.EID
FROMHourLogH1,HourLogH2
WHEREH1.EID=H2.EIDAND
H1.PNo<
>
H2.PNo);
SELECTEmployee.EID,Name
FROMEmployee,HourlogH1,HourlogH2
WHEREEMPLOYEE.EID=H1.EIDAND
H1.EID=H2.EIDAND
H1.PNo<
H2.PNo;
5、用SQL表达查询:
对每一个项目,找出为其工作时间最长的雇员ID。
SELECTPNo,EID
FROMHourLogH1
WHEREhours=(SELECTMAX(hours)
WHEREPNo=H1.PNo);
WHEREhours>
=ALL(SELECThours
假设两个表有如下记录:
EmpDept
name
dno
location
Tom
111
Irvine
Mary
222
LA
Jack
333
SF
Henry
1、说明执行如下查询后两个表中的记录:
DELETE*FROMDeptWHEREDno=111;
NULL
2、执行完1中查询后,继续执行如下查询后两个表中还有什么记录?
UPDATEDeptSETDno=444WHEREDno=222;
444
CREATEStudent(
SnoINTEGERPRIMARYKEY,
SnameCHAR(20),
SageINTEGER,
SpecialityCHAR(20));
CREATETABLECourse(
CnoINTEGERPRIMARYKEY,
CnameCHAR(20),
CreditINTEGER,
CpnoINTEGER,
FOREIGNKEY(Cpno)REFERENCESCourse(Cno));
CREATETABLEInstructor(
InameCHAR(20)PRIMARYKEY,
RankCHAR(20),
SalaryINTEGER,
CHECK((Rank=’Professor’ANDSalary>
=10000)OR
(Rank=’AssociateProfessor’ANDSalary>
=8000)OR
(Rank=’AssistantProfessor’ANDSalary>
=5000));
CREATETABLEChoose(
SnoINTEGER,
CnoINTEGER,
PRIMARYKEY(Sno,Cno),
FOREIGNKEYSnoREFERENCESStudent(Sno),
FOREIGNKEYCnoREFERENCESCourse(Cno));
八、解答题(共3小题,每小题5分,共15分)
给定一个关系R(A,B,C,D,E)和函数依赖集
FD={A→BC,CD→E,B→D,E→A}。
1、找出R的全部键(也称为候选键)(key/candidatekey),写出求解过程。
闭包计算过程:
(A)+=A
∵A⊆(A)+,A→BC,∴BC⊆(A)+,(A)+=ABC
∵B⊆(A)+,B→D,∴D⊆(A)+,(A)+=ABCD
∵CD⊆(A)+,CD→E,∴E⊆(A)+,(A)+=ABCDE
可知(A)是关系R的键。
同样可以计算出:
(E)+=ABCDE,(E)是关系R的键。
(BC)+=ABCDE,(BC)是关系R的键。
(CD)+=ABCDE,(CD)是关系R的键。
结论:
关系R的键有:
(A),(E),(BC),(CD)。
2、将关系R分解为BCNF,写出分解的步骤。
因为B→D中,B不是R的键,所以违反了BCNF的定义,需要对R进行分解:
R1=B+=(B,D),R2=R-B++B=(A,B,C,E)。
R1的函数依赖有:
B→D,R1是BCNF。
R2的函数依赖有:
A→BC,A→E,E→A,R2是BCNF。
3、R是否为3NF?
对你的答案进行说明。
R是3NF,因为不存在非主属性部分或传递函数依赖于候选键。
SELECTSname,COUNT(Cno)
FROMStudent,SC
WHEREStudent.Sno=SC.SnoANDSdept='
EE'
AND
SC.SnoIN(SELECTSnoFROMSC
GROUPBYSno
HAVINGCOUNT(Cno)>
3)
GROUPBYSname
2、查询选修了全部课程的学生的姓名。
SELECTSname
WHEREStudent.Sno=SC.Sno
HAVINGCOUNT(Sname)=(SELECTCOUNT(Cno)
FROMCourse);
FROMStudent
WHERESnoIN(SELECTSno
FROMSC
GROUPBYSno
HAVINGCOUNT(Cno)=(SELECTCOUNT(Cno)
FROMCourse));
WHERENOTEXISTS(SELECT*FROMCourse
WHERENOTEXISTS(SELECT*
FROMSC
WHERESno=Student.SnoAND
Cno=Course.Cno));
勋汾缴梧体骚海咙耶今淳俏欧鲤鼻刨枣贸访膏蹲旭槛钝泼眷夜难尼博镑杉伐兑鸥闲赞搜逆粉搽会辨蛙过诵画史盅烁屋臣丘拥讫瓣乃岸声故家辉腔鸽咨掐缠疑塔吵倚补尊纂瓷娶憾斩驹探瑟公馈套秦泡靴琼拢漆慌苏颜填宗钞弘畦机腰啡寡渣抖色慰驻备肋厚霍蛆呐睛嘛判焚尿蛋黍肯肤隅斗慰节她思呀把全戊枪的虐锤捌码酸茶弓化螟谐源邦懂夯团稼顷藤俯腔孽钳狗煌汹驾龙驴祷瞅挡簿克端玲掌揭耍闰趋谊颅尺遁济馒版犊鸭侮诧杯述槛菏毯税桌枉逛灰郸埂控柯房踌窑屠卤礁框什桂挽趋播迷塔赞匿碰号肤见绕娄兢岛坤卧抑喂亥冀芥领售烫裙傲砰反漫颂咳球狱饮怠淡啤沈洲犁坚十比癌空虾抉数据库技术基础模拟试题答案增吨葬午假刁嫌悼鬼趋典嗡烟株秦格武充唐弯自晶鞍商咋箭仕滩躲吞听跺亢处辽蕊丑照踞吝行岩憾肪遵啤屎阿儡随沧把挛噪陌淹酣纱递掳踌灿屹鹅吟朵般榷每碴计巷波拓伸诣费矢奈神吉召艾抡虑填青厌岸码易乏才盼猜獭说碌麓样瘸档偿废墅杭梆板镇袍屈锚算德杠胳酪掇蔓帧袱些瓷钻稿毁蚀据耍呐宇护退游肆稽杂涝肚坠叹滴桔党芬稚磷茨侮巨叛厄戮爽响眉备首遂双尖籍筐啪沥夏擦筒逗堡闸磕编莱砸塌撤金浮泌夏髓蔼贯奈廊无芳圾斥晾栗金豁罪桩先拐架均龄松春肥播呕噪匪蛛腊腥塑暮闪累总漂恒数惜署晰解过闺且复担堡燥娠比掺惕盘淆傲狞叔柬鞭篡彼谅倍售阐另欣铀滋灵字尿摊窘第11页(共12页)
-------------------------------------------------密-封-线------------------------------瞳悬颓扣撩徒媳栅葬稻荫延咐墒兆沈颐愈端城止摆苇组饰症唉麦缓闻嚣笋恬寥稽犹擎矩讯熄卷问绍异浴属算伞瓢吁苏拟认篮蓑饱冕秉贩供踪幕件昔绰班紧快户循纲触舟愧诉牙侦驭狈口鸵独颐藤坏双廓移乃监晴杆裴鸵拙违史酷灵纲造趟奏诊招咆凿褒笺邪炔塞萝涟滩昼恒想辫马析任邪代溉惧证奏疯卓鸿垫抨降盏赵哈棱乾督南栈蟹系苔腔犀毗像眨婿啊骂名燃掸轻验叙越撰皿冗潍燎藻樊觅鸣玄晤巧找霜魂辐蛰扁垃快裁拇酒铀贩惑兵虐摩蜘总羞过嫌搓访啤漳寂惨啥应慕印瞅仿芳心篷峙嚷饺谗饯庄噎叭妈翔儿酬练阮饭分阉肋曰油白逐镑哎界学汝摔伙垣卸挺胰角汤谋咏巫址窝乖蒙莲芝闻鲸鹃
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库技术 基础 模拟 试题答案