第 1 頁:模擬試題 |
第 6 頁:參考答案與解析 |
三、設計與應用題(共30分)
1.設某連鎖商店數據庫中有關系模式R:
R(商店編號,商品編號,庫存數量,部門編號,負責人)
如果規(guī)定:每個商店的每種商品只在一個部門銷售,每個商店的每個部門只有一個負責人,每個商店的每種商品只有一個庫存數量。(10分)
(1)請根據上述規(guī)定,寫出關系模式R的函數依賴集;
(2)請給出關系模式R的候選碼;
(3)請說明關系模式R屬于第幾范式,并給出理由;
(4)請將R分解成滿足3NF的關系模式。
2.設在SQL Server 2008某數據庫中,已建立了四個文件組:fg1、f92、f93和f94,以及一個分區(qū)函數RangePF1。
RangePF1的定義代碼如下:
CREATE PARTITION FUNCTION RangePFl(int)
AS RANGE LEFT FOR VALUES(100,200,300)
(1)請基于RangePFl創(chuàng)建一個分區(qū)方案RangePSl,每個分區(qū)對應一個文件組。(5分)
(2)請使用RangePSl創(chuàng)建一個分區(qū)表PartitionT(Gid,GoodName,Price),該表基于Gid列創(chuàng)建分區(qū)。其中Gid:int類型,取值大于等于1;GoodName:統(tǒng)一字符編碼可變長類型,最多可存儲20個漢字;Price:定點小數類型,小數部分1位,整數部分到千位。(5分)
3.某商場商品經營管理系統(tǒng)使用SQL Server 2008數據庫管理系統(tǒng),此系統(tǒng)上線運行1年后,業(yè)務人員使用某統(tǒng)計功能(此功能每月使用一次)時發(fā)現速度很慢。該統(tǒng)計功能主要執(zhí)行的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銷售明細(商品號);
某技術人員提出通過執(zhí)行下述語句以提高此查詢的運行效率:
CREATE VIEW商品銷售額視圖
WITH SCHEMABINDING
AS
SELECT商品號,SUM(銷售數量*銷售價格)銷售額,
COUNT_BIG(*)cnt
FROM db0.銷售明細
GROUP BY商品號;
CREATE UNIQUE CLUSTERED INDEX ix_商品銷售額
ON商品銷售額視圖(商品號);(10分)
(1)請分析該技術人員給出的語句功能以及對原有查詢語句的性能影響,并給出原因。
(2)此商場的銷售量很大,每天有大量數據插入到銷售明細表中。請從數據庫整體性能角度分析,此技術人員提出的優(yōu)化方法是否合適,并給出原因。
相關推薦:
2015年全國計算機等級考試無紙化考試系統(tǒng)操作指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |