首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某商场商品经营管理系统使用SQL Server 2008数据库管理系统,此系统上线运行1年后,业务人员使用某统计功能(此功能每月使用一次)时发现速度很慢。该统计功能主要执行的SQL语句如下: SELECT商品号,SUM(销售数量*销售价格)销售额
某商场商品经营管理系统使用SQL Server 2008数据库管理系统,此系统上线运行1年后,业务人员使用某统计功能(此功能每月使用一次)时发现速度很慢。该统计功能主要执行的SQL语句如下: SELECT商品号,SUM(销售数量*销售价格)销售额
admin
2016-04-27
45
问题
某商场商品经营管理系统使用SQL Server 2008数据库管理系统,此系统上线运行1年后,业务人员使用某统计功能(此功能每月使用一次)时发现速度很慢。该统计功能主要执行的SQL语句如下:
SELECT商品号,SUM(销售数量*销售价格)销售额
FROM销售明细
GROUP BY商品号;
该销售明细表的建表语句如下:
CREATE TABLE销售明细(
序列号int IDENTITY(1,1)NOT NULL,
商品号int NOT NULL,
销售日期datetime NULL,
销售数量int NOT NULL,
销售价格int NOT NULL.
);
并在销售明细表上建有如下索引:
CREATE index ix_销售明细_商品号on销售明细(商品号);
某技术人员提出通过执行下述语句以提高此查询的运行效率:
CREATE VIEW商品销售额视图
WITH SCHEMABINDING
AS
SELECT商品号,SUM(销售数量*销售价格)销售额,
COUNT_B1G(*)cnt
FROM dbo.销售明细
GROUP BY商品号;
CREATE UNIQUE CLUSTERED INDEX ix_商品销售额
ON商品销售额视图(商品号);
此商场的销售量很大,每天有大量数据插入到销售明细表中。请从数据库整体性能角度分析,此技术人员提出的优化方法是否合适,并给出原因。
选项
答案
不合适,每天大量的插入操作使得在修改表的同时也要对视图进行修改,增加了系统的负担,然而该统计功能一个月才用一次,这样导致系统的利用率也较为低下。
解析
由于视图是不实际存储数据的虚表,因此对视图的更新最终要转换为对基本表的更新。而用户通过视图对数据进行增加、删除、修改时,有意或无意地对不属于视图范围内的基本表数据进行操作,会破坏数据的一致性。而且视图中的数据本身就是冗余的,每次对表进行修改时,同时也要对相应的视图进行修改,这大大增加了系统的负担。
转载请注明原文地址:https://jikaoti.com/ti/6537FFFM
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
在数据库的安全性控制中,为了保证用户只能存取他有权存取的数据,在授权的定义中,数据对象的越怎样,授权子系统就越灵活?
一个关系数据库文件中的各条记录
当关系模式R(A,B)已属于3NF,下列说法中哪一个是正确的?
在数据库管理系统的层次结构中,由高级到低级的层次排列顺序为
在数据库管理系统中,下面哪个模块不是数据库存取的功能模块?
有一个网络数据库应用系统,其中一台计算机A存有DBMS软件、所有用户数据和应用程序,其余各节点作为终端通过通信线路向A发出数据库应用请求,这种方式属于
进行数据库系统的物理结构设计时,数据的存储结构有四种选择方式,分别是顺序存放、杂凑存放(或称散列存放、Hash存放)、【】、聚簇存放。
ORDBMS提供类型构造器,用于构造复杂对象的数据类型,主要的类型构造器为:组合(记录)、集合、【】。
关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式,它是用的运算来表达查询的。
在层次数据库中,父片段和子片段之间只能具有【】类型的联系。
随机试题
美国国家自然历史博物馆负责人类起源研究的波茨说:“多年来,人类学家把人类进化树看作是一系列阶段,这个树形图只有树干没有树枝,进化过程是从底部较接近猿类的动物进化到顶部的现代人。”“但是现在,科学研究已经真正充实了人类演化过程完全是一棵灌木的观点。即使在人类
被称为“世界短篇小说之王”的法国作家是()
下列病变中,属于真性肿瘤的是
抗病毒药物阿昔洛韦主要用于治疗
[2009年,第105题]计算机网络技术涉及()。
犯罪分子是在不同时空出现的,这就决定了公安工作的()。
二战全面爆发的标志是:
A国公民甲在公海上劫持B国船只,并向B国政府索要赎金。甲在途经我国时被我国公安部门抓获,我国对甲行使管辖权的依据是()
设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。经过一系列正常的入队与出队操作后,front-1=rear。为了在该队列中寻找值最大的元素,在最坏情况下需要比较的次数为()。
要显示当前过程中的所有变量及对象的取值,可以利用()窗口。
最新回复
(
0
)