数据库 优化查询 实验报告Word下载.docx

上传人:b****2 文档编号:15383211 上传时间:2022-10-29 格式:DOCX 页数:10 大小:17.84KB
下载 相关 举报
数据库 优化查询 实验报告Word下载.docx_第1页
第1页 / 共10页
数据库 优化查询 实验报告Word下载.docx_第2页
第2页 / 共10页
数据库 优化查询 实验报告Word下载.docx_第3页
第3页 / 共10页
数据库 优化查询 实验报告Word下载.docx_第4页
第4页 / 共10页
数据库 优化查询 实验报告Word下载.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

数据库 优化查询 实验报告Word下载.docx

《数据库 优化查询 实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《数据库 优化查询 实验报告Word下载.docx(10页珍藏版)》请在冰豆网上搜索。

数据库 优化查询 实验报告Word下载.docx

1.了解数据库查询优化方法和查询计划的概念。

2.学会分析查询的代价。

【实验内容及步骤】

针对单表查询、连接查询、嵌套查询这三种SQL操作,查看查询分析器给出的查询计划,分析优化效果。

1.单表查询(针对GSM数据库)

针对表BTS,在BTS经度上建立非簇集索引(必须使用Createindex语句),进行下列查询:

(1)查询BTS经度位于121.089335和121.142595之间的BTS基本信息。

selectBTS.*

fromBTS

whereLONGITUDEbetween121.089335and121.142595

(2)对海拔查询一个范围内的所有记录(例如大于30,小于60)。

SQL语句为:

whereALTITUDEbetween30and60

(3)对BTS经度进行大范围查询(就是结果集包括几乎所有记录)。

whereLONGITUDEbetween121.089335and121.185335

分析三种情况下的查询计划有何不同?

(1)表中记录数多少的影响:

如果BTS表中只有一条记录,重复上面的三个查询。

执行SQL语句

DROPTABLEBTS;

CREATETABLEBTS(

BTSNAMECHARACTER(20)NOTNULL,

BSCIDINTEGERNOTNULL,

LONGITUDEDECIMAL(9,6),

LATITUDEDECIMAL(8,6),

ALTITUDEINTEGER,

BTSCOMPANYCHARACTER(10),

BTSPOWERDECIMAL(2,1),

PRIMARYKEY(BTSNAME),

FOREIGNKEY(BSCID)REFERENCESBSC(BSCID)ONDELETENOACTIONONUPDATENOACTIONENFORCEDENABLEQUERYOPTIMIZATION);

insertintoBTS

values('

JIANHANG1'

42217,121.137365,41.112287,45,'

Datang'

5);

createindexindex2onBTS(LONGITUDE);

(2)对海拔查询一个范围内的所有记录(例如大于30,小于60)

(3)对BTS经度进行大范围查询(就是结果集包括几乎所有记录)

(2)不同索引类型对查询的影响

a.在BTS经度上建立簇集索引(必须使用Alterindex语句),重复上面的三个查询。

如果没有不同,可能是建立簇集索引不立即导致表中记录重新排列的缘故,如何启动这种重组过程?

BTSNAMECHARACTER(20)NOTNULL,

BSCIDINTEGERNOTNULL,

LONGITUDEDECIMAL(9,6),

LATITUDEDECIMAL(8,6),

ALTITUDEINTEGER,

BTSCOMPANYCHARACTER(10),

BTSPOWERDECIMAL(2,1),

PRIMARYKEY(BTSNAME),

FOREIGNKEY(BSCID)REFERENCESBSC(BSCID)ONDELETENOACTIONONUPDATENOACTIONENFORCEDENABLEQUERYOPTIMIZATION);

importfrom"

C:

\bts.csv"

OFDELMETHODP(1,2,3,4,5,6,7)MESSAGES"

1"

INSERTINTOBTS(BTSNAME,BSCID,LONGITUDE,LATITUDE,ALTITUDE,BTSCOMPANY,BTSPOWER);

dropindexindex1;

createindexindex1onBTS(LONGITUDE)CLUSTER;

REORGTABLEBTSINDEXINDEX1INPLACEALLOWWRITEACCESSSTART;

 

b.撤销在BTS经度上建立的任何索引(必须使用Dropindex语句),重复上面的三个查询,比较在有非簇集索引、簇集索引和无索引的情况下,查询效率的不同。

SQL语句:

dropindexindex1

结论:

三种情况相比,无索引效率最低,有非簇集索引会加快查询效率,簇集索引效率最高。

(3)索引代价:

在有一般索引、簇集索引和无索引的情况下插入、删除、更新数据,通过执行计划比较每个操作的执行效率。

注意不要只对一条记录操作,应该插入、删除、更新一批(比如200条索引键值比较集中的记录)记录,这样才能测出真实的效率。

插入数据,SQL语句如下:

XUEYUANMEN4'

42215,121.149885,41.120547,40,'

Bell'

5),

('

XUEYUANMEN5'

XUEYUANMEN6'

XINSONGLU4'

42215,121.179905,41.112977,50,'

XINSONGLU5'

XINSONGLU6'

BINHELU5'

42215,121.120565,41.112757,90,'

BINHELU6'

BINHELU7'

42215,121.120565,41.112757,55,'

BINHELU8'

42215,121.120565,41.112757,50,'

KAIFAQU4'

42216,121.089335,41.120217,50,'

Huawei'

KAIFAQU5'

KAIFAQU6'

PINGGUOYUAN4'

42216,121.162695,41.137144,25,'

PINGGUOYUAN5'

PINGGUOYUAN6'

JIANHANG4'

JIANHANG5'

42217,121.137365,41.112287,25,'

JIANHANG6'

42217,121.137365,41.112287,30,'

YIZHUAN5'

42217,121.136449,41.129033,50,'

YIZHUAN6'

42217,121.136449,41.129033,35,'

YIZHUAN7'

YIZHUAN8'

42217,121.136449,41.129033,30,'

PAOTUAN4'

42217,121.177965,41.127767,30,'

PAOTUAN5'

PAOTUAN6'

DIANYEJU4'

42217,121.128727,41.103949,35,'

DIANYEJU5'

DIANYEJU6'

42217,121.128727,41.103949,40,'

ERZHIGAO4'

42217,121.157705,41.107277,40,'

ERZHIGAO5'

ERZHIGAO6'

ZHONGFANGGS4'

42217,121.126305,41.122877,40,'

ZHONGFANGGS5'

ZHONGFANGGS6'

BI

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 建筑土木

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1