当前位置:文档之家› 数据库系统工程师练习题及答案第三套

数据库系统工程师练习题及答案第三套

数据库系统工程师练习题(三)
试题某工厂的信息管理数据库的部分关系模式如下所示:
职工(职工号,姓名,年龄,月工资,部门号,电话,办公室)
部门(部门号,部门名,负责人代码,任职时间)
问题1] 解答(a)PRIMARY KEY(b)FOREIGN KEY ( 负责人代码) REFERENCES 职工
(c)FOREIGN KEY ( 部门号) REFERENCES 部门(d) 月工资>=500 AND <月工资=5000 ,或月工资BETWEEN 500 AND 5000(e)count(*) ,Sum (月工资),Avg ( 月工资)(f)GrOup by 部门号
[ 问题2] 解答
(1) 该行不能插入“职工”关系,它违反了实体完整性中主码必须惟一区分关系中的每一个属性。

(2) 该行可以插入“职工”关系,尽管部门号、电话和办公室为空,但是它表示该雇员没有分配到某个
部门。

(3)该行不能插入“职32'’关系,它违反了参照完整性。

因为 6 在关系“部门”中不存在。

[ 问题3] 解答(1)和(2) 都不能更新,因为使用分组合聚集函数定义的视图是不可更新的。

(3) 不一定,视子查
询的返回值而定,(4)和(5) 允许查询。

[ 问题4] 解答(1)对于外层的职工关系 E 中的每一个元组,都要对内层的整个职工关系M 进行检索,因此查询效率不高。

(2)Select 职工号from 职工,(Select Max ( 月工资) as 最高工资,部门号Group by 部门号)as depMax where 月工资=最高工资and 职工.部门号=depMax .部门号
[ 问题5] 解答Select 姓名,年龄,月工资from 职工where 年龄>45;
Union Select 姓名,年龄,月工资from 职工where 年龄月工资<1000;
试题某仓储超市采用POS(Point of Sale) 收银机负责前台的销售收款,为及时掌握销售信息,并依此指导进
货,拟建立商品进、销、存数据库管理系统。

该系统的需求分析已经基本完成,下面将进入概念模型的设
计。

试题解答
[ 问题1] 解答
[ 问题2] 解答商品( 商品编号,商品名称,供应商,单价)直销商品(商品编号,生产批号,消费期限) 库存商品(商品编号,折扣率)
[ 问题3] 解答
销售详单(销售流水号,商品编码,数量,金额,收银员,时间) 销售日汇总(日期,商品编码,数量) 存货表(商品编码,数量) 进货表(送货号码,商品编码,数量,日期)
商品(商品编号,商品名称,供应商,单价) 直销商品(商品编号,生产批号,消费期限)
库存商品(直显组号,折扣率)
[ 问题4] 解答
1. 采用商品信息集中存储在中心数据库中,则在销售前台的每笔计费中,都必须从中心数据库提取
商品名称和单价,增加网络的负载,在业务繁忙时直接影响到前台的销售效率;同时,如果发生网络故障,则该POS 机不能工作。

采用这种方式,对商品库的更新,如引入新的商品和修改商品价格,会及时体现在前台的销售业务中。

2.采用商品信息存储在中心数据库中,各POS 机存储商品表的备份,POS 机直接从本地读取商品信息,减少了网络的负载,可以提高交易的效率;同时即使有短时间的网络故障,也不影响
该POS 机的正常使用,只有当存在商品信息变更时才需要与中心数据库同步。

采用这种方式,必须在每次商品信息变更时同步各POS 机的数据。

[ 问题5] 解答1.对销售详单关系模式做如下的修改,增加积分卡号属性。

销售详单(销售流水号,商品编
码,数量,金额,收银员,时间,)
2. 加积分卡关系模式:积分卡(积分卡号,累积消费金额,积分点)关系模式中画实下划线表示主键,虚
下划线表示外键。

试题某工厂的仓库管理数据库的部分关系模式如下所示:
仓库(仓库号,面积,负责人,电话)
原材料(编号,名称,数量,储备量,仓库号)
要求一种原材料只能存放在同一仓库中。

“仓库”和“原材料”的关系实例分别如表2-1 和表2-2 所示。

参考答案
[ 问题1](a) PRIMARY KEY 仓库号(b) PRIMARY KEY 或NOT NULL UNIQUE 或NOT NULL P RIMARY
KEY(c) CHAR (4)(d) FOREIGN KEY 仓库号REFERENCES 仓库(仓库号)
[ 问题2](e) 原材料(f)GROUP BY 仓库号
HAVING SUM ( 数量)>=ANY(SELECT SUM( 数量)FROM 原材料GROUP BY ( 仓库号)
[ 问题3](g) * 或编号,名称,数量,储备量,仓库号(h) INSERT ,DELETE ,UPDATE
(j) raws in wh01(j) SELECT(k) 原材料
[ 问题4](1) UPDATE ,INSERT (m) nrow, 编号(n) nrow .存储量*3
[ 问题5] 存在问题:触发器程序判定某一原材料“数量”是否小于其存储量时,是按照当前记录的“数量”
来判定的,当一种原材料存储在多个仓库时,这样判定是错误的,应根据该原材料在各仓库的存储总量判
定。

应将触发器程序的WHEN 子句条件修改为:WHEN nrow. 储备量>(SELECT SUM ( 数量)
FROM 原材料WHERE 编号=(SELECT 编号FROM nrow) GROUP BY 编号)
试题某市人才交流中心为促进当地人力资源的合理配置,加强当地企业与人才的沟通,拟建立人才信息交流
网。

[ 需求分析结果]1 .每个前来登记的个人需填写《人才入库登记表》(如表3—1 所示),并出示相关证件,经
工作人员审核后录入个人信息。

参考答案
[ 问题1]
(a)
[ 问题2](b) 个人编号,岗位,最低薪水,登记日期(c) 企业编号,岗位,专业,学历,薪水,备注,登记
日期(d)个人编号,姓名,性别,出生日期,身份证号,毕业院校,专业,学历,证书名称,联系电话,
电子邮件,个人简历及特长(e)证书名称,证书编号
[ 问题3] 企业(企业编号,企业名称,联系人,联系电话,地址,企业网址,电子邮件,企业简介)
求职意向( ,最低薪水,登记日期) 岗位需求( ,专业,学历,薪水,备
注,登记日期) 人才(个人编号,姓名,性别,出生日期,身份证号,毕业院校,专业,学历,,联系电话,电子邮件,个人简历及特长) 证书(证书名称,证书编号)
[ 问题4]
此处的“需求”是“岗位”、“企业”和“人才”三个实体之间的联系,而事实上只有人才被聘用之后
三者之间才产生联系。

本系统解决的是人才的求职和企业的岗位需求,人才与企业之间没有直接的联系。

[ 问题5]
建立企业的登录信息表,包含用户名和密码,记录企业的用户名和密码,将对本企业的基本信息的修
改权限赋予企业的用户名,企业工作人员通过输入用户名和密码,经过服务器将其与登录信息表中记录的
该企业的用户名和密码进行验证后,合法用户才有权限修改企业的信息。

试题二(15 分)
[说明]
某企业网上销售管理系统的数据库部分关系模式如下所示:
客户(客户号,姓名,性别,地址,邮编)
产品(产品号,名称,库存,单价)
订单(订单号,时间,金额,客户号)
订单明细(订单号,产品号,数量)
参考答案
[问题1](a)NOT NULL UNIQUE 或NOT NULL PRIMARY KEY 或PRIMARY KEY
(b)CHECK (VALUE IN(' 男','女')) (c)FOREIGN KEY (客户号) REFERENCES 客户(客户号) [问题2](d)查询一次订购(或购买)产品号为02 的数量大于10 的客户号
(e)
(f) 可以优化。

优化的SQL 语句为:
SELECT 客户号FROM 订单WHERE 订单号IN
(SELECT 订单号FROM 订单明细WHERE 产品号='02' AND 数量>10);
[问题3](g)SUM ( 金额) AS 总额(h)GROUP BY 客户.客户号(i)ORDER BY 总额DESC
[问题4] (1) CREATE VIEW 客户产品AS( SELECT 客户号,产品号FROM 订单,订单明细WHERE 订单明细.订单号=订单.订单号);
(2)(j)NOT EXISTS (k) 客户号='01' AND NOT EXISTS
(1) 客户产品 1.客户号=客户产品 3.客户号AND 客户产品 2.产品号=客户产品 3.产品号
[问题5]
采用数据库管理系统的触发器机制。

对产品关系定义一个触发器,在订单明细中的记录插入或更新之
后,该触发器被激活,根据订单明细中订购的产品及数量,减少产品关系中对应产品的库存量。

试题某单位资料室需要建立一个图书管理系统,初步的需求分析结果如下:
(1) 资料室有图书管理员若干名,他们负责已购入图书的编目和借还工作,每名图书管理员的信息包括工号和姓名;
参考答案
[问题1](1)n 或m (2)m 或n (3)1 (4)n 或m
[问题2](a)读者ID ,图书ID
[问题3]
关系模式主键外键
读者读者ID
书目ISBN 号
图书图书ID ISBN号
借还记录读者ID ,图书ID,借出时间读者ID,图书ID。

相关主题