计算机等级考试三级数据库论述题真题3
来源:优易学  2010-1-14 18:08:56   【优易学:中国教育考试门户网】   资料下载   IT书店
3.(2000年)设计一个用于管理会议室的数据库。经调查分析,得到的数据项列出如下: 
房间号r#CHAR(4),部门号d#CHAR(3),部门名称dnameCHAR(20), 
房间容量contentINT,部门主管dmanagerCHAR(8),开会日期mdateDATE, 
会议名称cnameCHAR(20),会议主题(subject)CHAR(80),会议类型(type), 
部门人数dnumINT,当前房间状态stateCHAR(1), 
并确定以会议室(room)信息,部门(department)信息,会议(conference)信息为实体,它们通过“开会(meeting)”联系起来。为了简化问题做如下假定: 
l         会议以部门召开,但一个部门在同一会议室不能重复召开同一个会议。 
l         会议室按部门借用,且不预借。 
l         当前房间状态取值为‘1’表示该会议室当前正在开会,取值为‘0’表示该会议室当前未被借用。 
数据库概念设计的只包含主键属性的简化E-R图如下: 
  cname 
r# 
会议conference 
房间room 
部门department 
d# 
开会meeting 



要求: 
  ⑴数据库的逻辑结构设计:给出相应的表名、表的属性名(数据类型可省)、主键。(14分) 
  ⑵给出下列查询的SQL语句:(16分,每小题4分) 
  a)当前未借用的会议室(房间号)和容量: 
  b)2000年4月8日有哪些部门(部门名称)在开会?他们的主管是谁? 
  c)2000年4月8日‘信息中心’在哪个会议室(房间号)开会?会议名称和主题是什么? 
  d)当前能够适合‘信息中心’开会的有哪些会议室(房间号)? 

答案: 
  (1)数据库的逻辑结构设计(给出相应的表名,表结构,主键;(14分) 
  room(r#,content,state)主键:r#(3分) 
  department(d#,dname,dmanager,dnum)主键:d#(3分) 
  conference(cname,subject,type)主键:cname(3分) 
  meeting(r#,d#,cname,mdate)主键(r#,d#,cname)(5分) 
  (2)给出下列查询的SQL语句:(16分,每小题4分) 
  a)当前未借用的会议室(房间号)和容量: 
  selectr#,contentfromroomwherestate=’0’ 
  b)2000年4月8日有哪些部门(部门名称)在开会?他们的主管是谁? 
  Selectdname,dmanagerfromdepartmentd,meetingm 
  whered.d#=m.d#andmdate=’2000年4月8日’ 
  或 
  Selectdname,dmanagerfromdepartmentd 
  whered.d#=in(selectm.d#=frommeetingmWheremdate=’2000年4月8日’) 
  c)2000年4月8日’信息中心’在哪个会议室(房间号)开会?会议名称和主题是什么? 
  Selectr#,m.cname,subjectfromdepartmentd,meetingm,conferencec 
  whered.d#=m.d#andm.cname=c.cnameand 
  Mdate=’2000年4月8日’anddname=’信息中心’ 
  或(注:本题中Selectr#,c.cname,......也可以是Selectr#,m.cname,...... 
  Selectr#,c.cname,subjectfrommeetingm,conferencec 
  WhereMdate=’2000年4月8日’andm.cname=c.cnameand 
  m.d#=(selectd.d#fromdepartmentdwheredname=’信息中心’) 
  d)当前能够适合’信息中心’开会的有哪些会议室(房间号)? 
  Selectr#fromroomwherestate=’O’and 
  content>=(selectdnumfromdepartmentwheredname=’信息中心’)

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训