试题一至试题四是必答题 |
试题一(15分)
阅读以下说明和数据流图,回答问题1至问题3,将解答题纸的对应栏内。
[说明]
学生住宿服务系统帮助学生在就学的城市内找以所需的住房,系统对出租的房屋信息、房主信息、需要租房的学生信息以及学生和房主的会面住处进行管理和维护。
房主信息包括姓名、地址、电话号码以及系统分配的唯一身份标识(ID)和密码;房屋信息包括房屋地址、类型(单间/套间)、适合住宿的人数、房租、房主的ID以及现在是否可以出租(例如由于装修原因,需等到装修后才可出租或者房屋已被租出)。每当房房屋信息发生变化时,房主须通知系统,系统将更新房到文件以便学生能够获得准确的可租用房屋信息,房主向系统中加入可租用的房屋信息时,需交纳一定的费用,由系统自动给出费用信息。房主可随时更新房屋的各种属性。
学生可通过系统查询现有的可租用的房屋,但必须先在系统中注册。学生信息包括姓名、现住址、电话号码、出生日期、性别以及系统分配的唯一身份标识(ID)和密码。若学生希望租用某房屋,则需要发出租房请求,请求中包含房屋的详细信息,系统将安排学生与房主会面的时间和地点,并将会面信息通知学生和房主,会面信息包括会面时间、地点以及会面双方的基本信息,系统将记录会面信息。
学生住宿服务系统的顶层图如图1-1所示;学生住宿服务系统的第0层DFD图如图1-2所示,其中,加工3的细化图如图1-3所示。
[问题1](6分)
(1)数据流图1-1缺少了一条数据流(在图1-2中也未给出该数据流),请给出此数据流的起点和终点,并采用说明中的词汇给出此数据流名。
(2)数据流图1-2中缺少了与"查询房屋"加工相关的数据流,请指出此数据流的起点和终点。
[问题2](4分)
"安排会面"加工除需要写入会面文件外,还需要访问哪些文件?
[问题3](5分)
请补齐下列数据字典条目:
登录信息=学生ID+密码
注册信息=
[数据流图1-1]
[数据流图1-2]
[数据流图1-3]
试题二(15分)
阅读以下说明和表,回答问题1至问题4,将解答填入答题纸的对应栏内。
[说明]
某公司信息管理系统的需求分析和部分关系模式的结果描述如下:
1. 公司有多个部门,每个部门有一名负责人、一间办公室、一部电话、多名职员,每个职员最多数一个部门,负责人也是公司一名职员。
2. 公司职员的工资大于等于1000元且最小等于8000。
3. 数据库的部分关系模式设计如下:
职员(职员号,职工姓名,月工资。部门号、办公室,电话)
部门(部门号,部门名,负责人代码,任职时间)
4."职员"和"部门"的关系示例分别如表2-1和表2-2所示
[表2-1]
"职员"关系
职员号 |
职员姓名 |
月工资 |
部门号 |
办公室 |
电话 |
60801 |
汪俊华 |
1000 |
1 |
A座201 |
6883122 |
60802 |
杨晓军 |
3200 |
1 |
A座201 |
6883122 |
60803 |
王晓华 |
4300 |
2 |
B座202 |
6883123 |
60804 |
邢彦军 |
2800 |
2 |
B座202 |
6883123 |
60805 |
吕靖原 |
5300 |
3 |
A座301 |
6883124 |
60806 |
芦文峰 |
3200 |
3 |
A座301 |
6883124 |
60807 |
牟雪松 |
2800 |
3 |
A座301 |
6883124 |
60808 |
高亚南 |
1200 |
4 |
B座302 |
6883125 |
60810 |
周黎 |
3200 |
4 |
B座302 |
6883125 |
60820 |
姚应磊 |
1200 |
4 |
B座302 |
6883125 |
60821 |
程文驰 |
3200 |
5 |
B座303 |
6883126 |
60836 |
许俊坤 |
0 |
Nu11 |
… |
… |
[表2-2]
"部门"关系
部门号 |
部门名 |
负责人代码 |
任职时间 |
1 |
财务部 |
60802 |
2001-8-5 |
2 |
市场部 |
60803 |
2002-6-3 |
3 |
研发部 |
60805 |
2002-6-3 |
4 |
生产部1 |
60810 |
2003-8-1 |
5 |
生产部2 |
60821 |
2004-6-3 |
[问题1](4分)
根据上述说明,请给出
(1)"职员"关系模式的主键和外键。
(2)"部门"关系模式的主键和外键。
[问题2](4分)
(1)用SQL定义"职员"关系模式,请在空缺处填入正确的内容。
Create Table职员(职员号CHAR(5)__(a)__ ,
职员姓名 CHAR(8),
月工资 NUMBER(4),
部门号 CHAR(1),
办公室 CHAR(20)
电话 CHAR(8),
__(b)__ (部门号),
CHECK(月工资>=1000 AND月工资<=8000));
(2)针对人数大于等于2的部门创建视图D_View(Dept, D_num,D_Totals,D_Avgpay),其中,Dept为部门号,D num为部门人数,D_Totals为部门人数,D_Avgpay为平均工资,请在空缺处填入正确的内容。
Create View D_View(Dept,D_num,D_Totals,D_AvgPay)As
(Select部门号,__(c)__
from 职员
__(d)__ count(*)>=2 WHERE 部门号IS NOT NULL):
[问题3](3分)
对于表2-1、表2-2所示的"职员"和"部门"关系,请指出下列各行是否可以插入"职员"关系,为什么?
1 |
60811 |
芦 峰 |
800 |
1 |
A座201 |
6883122 |
2 |
60802 |
李晓啸 |
3500 |
2 |
B座202 |
6883123 |
3 |
60812 |
高亚南 |
2600 |
[问题4](4分)
原来的"职员"关系模式存在什么问题?在不增加新关系模式的前提下,请给出修出改后的"职员"和"关系模式"。
责任编辑:小草