第 1 页:模拟试题 |
第 6 页:参考答案与解析 |
三、设计与应用题(共30分)
1.设某连锁商店数据库中有关系模式R:
R(商店编号,商品编号,库存数量,部门编号,负责人)
如果规定:每个商店的每种商品只在一个部门销售,每个商店的每个部门只有一个负责人,每个商店的每种商品只有一个库存数量。(10分)
(1)请根据上述规定,写出关系模式R的函数依赖集;
(2)请给出关系模式R的候选码;
(3)请说明关系模式R属于第几范式,并给出理由;
(4)请将R分解成满足3NF的关系模式。
2.设在SQL Server 2008某数据库中,已建立了四个文件组:fg1、f92、f93和f94,以及一个分区函数RangePF1。
RangePF1的定义代码如下:
CREATE PARTITION FUNCTION RangePFl(int)
AS RANGE LEFT FOR VALUES(100,200,300)
(1)请基于RangePFl创建一个分区方案RangePSl,每个分区对应一个文件组。(5分)
(2)请使用RangePSl创建一个分区表PartitionT(Gid,GoodName,Price),该表基于Gid列创建分区。其中Gid:int类型,取值大于等于1;GoodName:统一字符编码可变长类型,最多可存储20个汉字;Price:定点小数类型,小数部分1位,整数部分到千位。(5分)
3.某商场商品经营管理系统使用SQL Server 2008数据库管理系统,此系统上线运行1年后,业务人员使用某统计功能(此功能每月使用一次)时发现速度很慢。该统计功能主要执行的SQL语句如下:
SELECT商品号,SUM(销售数量*销售价格)销售额
FROM销售明细
GROUP BY商品号;
该销售明细表的建表语句如下:
CREATE TABLE销售明细(
序列号intIDENTITY(1,1)NOT NULL,
商品号intNOT NULL,
销售日期datetime NULL,
销售数量intNOT NULL,
销售价格intNOT NULL
);
并在销售明细表上建有如下索引:
CREATE index ix_销售明细_商品号on销售明细(商品号);
某技术人员提出通过执行下述语句以提高此查询的运行效率:
CREATE VIEW商品销售额视图
WITH SCHEMABINDING
AS
SELECT商品号,SUM(销售数量*销售价格)销售额,
COUNT_BIG(*)cnt
FROM db0.销售明细
GROUP BY商品号;
CREATE UNIQUE CLUSTERED INDEX ix_商品销售额
ON商品销售额视图(商品号);(10分)
(1)请分析该技术人员给出的语句功能以及对原有查询语句的性能影响,并给出原因。
(2)此商场的销售量很大,每天有大量数据插入到销售明细表中。请从数据库整体性能角度分析,此技术人员提出的优化方法是否合适,并给出原因。
相关推荐:
2015年全国计算机等级考试无纸化考试系统操作指南北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |