软题库 移动APP 扫码下载APP 随时随地移动学习 培训课程
当前位置:信管网 >> 在线考试中心 >> 信息系统项目管理师题库 >> 试题查看
试卷名称 2007年下半年数据库系统工程师考试下午真题试题(案例分析)
考试中心《2007年下半年数据库系统工程师考试下午真题试题(案例分析)》在线考试
试卷年份2007年下半年
试题题型【分析简答题】
试题内容

阅读以下说明,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】
某商场客户-商品数据库中各关系模式如下:
客户(客户号, 姓名, 性别, 年龄)
商品(商品号, 名称, 型号, 品牌, 单价, 库存)
销售(流水号, 客户号, 商品号, 数量, 日期)
采购(商品号,数量)
其中:
1)一种品牌的同一名称商品可以有多个型号,商品的库存有大于等于0约束;
2)销售表记录每一笔销售,每销售一件商品,其库存都要做相应的修改。
现假定已经建立了该数据库及上述四个基本表。
【问题1】(5分)
 (1) 客户关系中的年龄取值在15岁到60岁之间(包含15岁和60岁),增加该约束的SQL语句如下,请将空缺部分补充完整。
ALTER TABLE 客户 ADD CONSTRAINT
CONSTRAINT con_age CHECK (  (a)  )
(2) 如下用SQL语句创建的畅销商品视图包含商品号、商品名称、型号、品牌和销售量,该视图中商品的销售量大于等于1000件。请将空缺部分补充完整。
CREATE VIEW 畅销商品    (b)    
AS
SELECT 商品.商品号, 名称, 型号, 品牌, 销售量
FROM 商品, ( SELECT 商品号,  (c)  AS 销售量
FROM  销售
GROUP BY 商品号
HAVING SUM(数量) > = 1000 ) AS 商品销售量
WHERE    (d) ;
(3) 将视图畅销商品的查询权限赋予销售经理李华,请将空缺部分补充完整。
GRANT    (e) ON TABLE 畅销商品TO 李华;
 【问题2】 (3分)
查询购买“新飞”品牌的任一型号“冰箱”的客户姓名及购买日期。实现该查询的SQL语句如下,请将空缺部分补充完整。
SELECT 姓名, 日期
FROM    (f)    
WHERE    (g)     AND 商品号 (h) (
SELECT 商品号 FROM 商品
WHERE 品牌 = ’新飞’  AND 名称 = ’冰箱’ )
【问题3】 (3分)
实现销售业务的嵌入式SQL代码段(嵌入C语言)如下,假设销售表的流水号由系统自动生成。请将空缺部分补充完整。
……
EXEC SQL BEGIN DECLARE SECTION;
/* 销售:商品号,客户号,数量,日期 */
char pno[6]; char cno[6];
int quantity;     char date[10];
EXEC SQL END DECLARE SECTION;
 ……
EXEC SQL CONNECT TO DEFAULT;
EXEC SQL SET TRANSACTION ISOLATION LEVELSERIALIZABLE;
EXEC SQL INSERT INTO 销售(商品号,客户号,数量,日期)
VALUES(   (i)   );
EXEC SQL UPDATE 商品 SET 库存 =  (j)     WHERE 商品号= :pno;
if(SQLCA.SQLCODE != 0){
printf("商品%s库存不满足本次购买数量,交易失败!", pno);
 EXEC SQL ROLLBACK WORK;
 } else{
EXEC SQL   (k)  ;
  }
 EXEC SQL DISCONNECT CURRENT;
 ……
 【问题4】 (4分)
对商品表增加最小库存属性;若修改某商品的库存时,使得库存值小于或等于其最小库存值,则向采购表插入一条记录,要求采购的数量是该商品最小库存值的两倍再加上10。下面是完成该功能的SQL语句,请将空缺部分补充完整。
ALTER TABLE 商品    (l)    ;
CREATE TRIGGER 采购-trigger AFTER    (m)    
REFERENCING NEW ROW AS nrow
FOR EACH ROW
WHEN   (n)   
BEGIN
INSERT INTO 采购
VALUES(    (o)     )
END


相关试题

推荐文章
合作网站内容