数据库实验报告七.docx
- 文档编号:2864863
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:14
- 大小:839.05KB
数据库实验报告七.docx
《数据库实验报告七.docx》由会员分享,可在线阅读,更多相关《数据库实验报告七.docx(14页珍藏版)》请在冰豆网上搜索。
数据库实验报告七
肇庆学院计算机学院/软件学院
实验报告
专业软件工程班级软件2班姓名陈焕荣学号201524133232课程名称数据库原理与设计
学年2016—2017学期1□/2课程类别专业必修限选□任选□实践□
评分:
批阅老师:
2017年月日
实验七查询优化
●实验目的
1. 了解DBMS对查询优化的处理过程。
2. 增强查询优化的实践能力。
3. 进一步提高编写复杂查询的SQL脚本的能力。
4. 巩固和加深理解查询相关理论。
●实验内容
针对数据库ShiYan,完成以下查询优化操作。
(1)查询P表中各零件编号、名称及重量按86%计算后的信息,其中重量按86%计算后的查询列名改为“零件净重”。
要求:
1) 考虑表扫描的情况。
2) 考虑建立适当索引的情况。
3) 考虑重写SQL脚本的情况。
4) 用不同的方法实现本题中的查询操作,分析系统为各种查询实现方法生成的执行计划和客户统计信息。
5) 记录各种查询的平均执行时间,决定哪种查询实现方法是相对最优的。
(2)查询没有使用天津供应商生产的零件并且当前工程所使用零件的颜色全部为红色的工程号JNO。
要求:
1) 考虑表扫描的情况。
2) 考虑建立适当索引的情况。
3) 考虑重写SQL脚本的情况。
4) 用不同的方法实现本题中的查询操作,分析系统为各种查询实现方法生成的执行计划和客户统计信息。
5) 记录各种查询的平均执行时间,决定哪种查询实现方法是相对最优的。
●实验结果
(1)
A.方法一:
“表扫描”
Sql语句如下:
selectPNO,PNAME,WEIGHT*0.86零件净重
fromP
实验结果截图:
B.方法二:
“在P(PNO)上建立唯一索引”
createuniqueindexPNO_indexonP(PNO)
selectPNO,PNAME,WEIGHT*0.86零件净重
fromP
实验结果截图:
由上可知,方法二相对最优。
(2)
A.方法一:
多表间连接
declare@iint
set@i=0
while@i<100
begin
set@i=@i+1
selectSPJ.JNO
fromSPJ,P,S
whereP.PNO=SPJ.PNO
andSPJ.SNO=S.SNO
andP.COLOR='红'实验结果截图:
andS.CITY!
='天津'
end
B.方法二:
在每个表中分别查询
declare@iint
set@i=0
while@i<100
begin
set@i=@i+1
selectSPJ.JNO实验结果截图:
fromSPJ
whereSPJ.PNOin
(selectP.PNO
fromP
whereP.PNO=SPJ.PNO
andP.COLOR='红'
)
andSPJ.SNOnotin
(selectS.SNO
fromS
whereS.CITY='天津'
)
end
C.方法三
declare@iint
set@i=0
while@i<100
begin
set@i=@i+1
selectSPJ.JNO
fromSPJ
whereSPJ.SNOnotin
(selectS.SNO
fromS
whereS.CITY='天津'
)
andSPJ.PNOin
(selectP.PNO
fromP
whereP.PNO=SPJ.PNOandP.COLOR='红'
)
end
实验结果截图:
D.方法四
declare@iint
set@i=0
while@i<100
begin
set@i=@i+1
selectSPJ.JNO
fromSPJ
whereSPJ.SNOin
(selectS.SNO实验结果截图:
fromS
whereS.CITY<>'天津'
)
andSPJ.PNOin
(selectP.PNO
fromP
whereP.PNO=SPJ.PNO
andP.COLOR='红'
)
end
由上可知,方法三最优。
●实验小结
通过本次实验,了解DBMS对查询优化的处理过程。
对于不懂的问题通过上网搜索和书上查找等方式,不仅能快速地掌握,还能了解到该问题涉及的其他方面的知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验 报告