文档介绍:第14章数据库系统工程师级下午试题分析与解答
试题一分析参见软件设计师。
试题二
阅读下列说明,回答问题1至问题5,将解答填入对应栏内。
[说明]
某工厂的仓库管理数据库的部分关系模式如下所示:
仓库(仓库号,面积,负责人,电话)
原材料(编号,名称,数量,储备量,仓库号)
要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表2-1和表2-2所示。
表2-1“仓库”关系(表格)
仓库号
面积
负责人
电话
仓库号
面积
负责人
电话
01
500
李劲松
87654121
03
300
郑爽
87654123
02
300
陈东明
87654122
04
400
刘春来
87654125
表2-2“原材料”关系
编号
名称
数量
储备量
仓库号
1001
小麦
100
50
01
2001
玉米
50
30
01
1002
大豆
20
10
02
2002
花生
30
50
02
3001
菜油
60
20
03
【问题1】
根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。
CREATE TABLE仓库(仓库号CHAR(4),
面积 INT,
负责人 CHAR(8),
电话 CHAR(8),
(a) ); //主键定义
CREATE TABLE 原材料(编号 CHAR(4) (b) , //主键定义
名称 CHAR(16),
数量 INT,
储备量 INT,
仓库号(c) ,
(d) ); //外键定义
【问题2】
将下面的SQL语句补充完整,完成“查询存放原材料数量最多的仓库号”的功能。
SELECT仓库号
FROM (e)
(f) ;
【问题3】
将下面的SQL语句补充完整,完成“01号仓库所存储的原材料信息只能由管理员李劲松米维护,而采购员李强能够查询所有原材料的库存信息”的功能。
CREATE VIEW raws_in_wh01 AS
SELECT (g)
FROM 原材料
WHERE仓库号="01";
GRANT (h) ON (i) TO 李劲松;
GRANT (j) ON (k) TO 李强;
【问题4】
仓库管理数据库的订购计划关系模式为:订购计划(原材料编号,订购数量)。采用下面的触发器程序可以实现“当仓库中的任一原材料的数量小于其储备量时,向订购计划表中插入该原材料的订购记录,其订购数量为储备量的三倍”的功能。请将该程序的空缺部分补充完整。
CREATE TRIGGER ins_order_trigger AFTER (1) ON 原材料
REFERENCING NEW ROWAS nrow
FOR EACHROW
WHEN <
INSERT INTO 订购计划VALUES
( (m) , (n) );
【问题5】
如果一种原材料可以在多个仓库中存放,则问题4中的触发器程序存在什么问题,如何修改?
试题二分析
[问题1]
本问题考查应试者对SQL数