数据库系统概论查询优化实验报告.docx

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库系统概论查询优化实验报告

数据库实验报告 题目:查询优化 姓名: 李军毅 日期:2016-5-14实验目的明确查询优化的重要性;理解代数优化与物理优化方法;学习在查询中使用较优的方法。实验平台OS:Windows XPDBMS:SQLServer2008、VC6.0(或者visio studio)IDE:Eclipse实验用时:两次上机实验内容数据库的恢复操作(导入数据)在【程序】中打开Microsoft SQL Server Management Studio。新建数据库“FoodmartII”在数据库FoodmartII 上右键单击,选择【任务】【导入数据】。在“导入和导出向导”对话框中,数据源选择“Microsoft Access”,单击“文件名”后面的【浏览】按钮,按你的存储路径找到Foodmart.mdb 文件。单击【下一步】。4.在“选择目标”部分,注意目标数据库的名称应为刚才建立的“FoodmartII”。5.选择复制一个或多个数据库表。6.在接下来的对话框中选择可能用到的数据表,根据需要勾选。单击【下一步】并“立即执行”,成功导入数据后可以看到如下对话框。单击【关闭】按钮。观察数据库引擎中的FoodmartII,看一看数据库中有哪些表,表中有哪些数据,是否包含索引,是否建立了视图?二、理解索引对查询的影响1.新建查询,在查询窗口中输入一个查询命令。2.在【查询】菜单中选择【显示估计的查询计划】,注意观察查询窗口下面的执行计划窗口。执行该查询(使用工具栏上的“执行”按钮或者【查询】菜单上的“执行”命令),观察右侧【属性】窗口中“返回的行数”“占用时间”等关键信息。3.为Customer 表建立索引。建立Customer_id 列的非聚集索引。执行查询,在【属性】窗口中观察查询时间。分析查询条件对查询执行的影响1.新建查询,输入查询命令,再按上面的步骤,观察“估计的查询计划”和“占用时间”时间等信息,比较查询条件对查询执行的影响。2.观察查询命令,在emplyee 表建立salary 列的非聚集索引。再次观察上面这个查询命令的查询计划和执行情况。分析连接条件对连接操作的影响1.对比下面查询的查询计划和查询执行情况2.在employee 表上对employee_id 列建立聚集索引.观察查询计划和执行情况的变化.视图的使用执行下面的查询命令,观察查询计划和执行情况。建立视图“cust_prod_sales”,由product,customer , sales_fact_1998 三个表组成,其中包含查询常用的列(选取的列可以多于查询Q51),再执行下面的查询,比较两个查询的执行情况。查询优化测试数据准备,导入TPCH 数据集。数据导入方法同前面Footmark 的导入类似。对以下查询进行优化,写出你的优化方法. 实际执行这个查询, 记录你的执行时间(毫秒). 实验中出现的问题实验内容一、数据库的恢复操作(导入数据)1.在【程序】中打开Microsoft SQL Server Management Studio。新建数据库“FoodmartII”打开Microsoft SQL Server Management Studio,如图:新建数据库“FoodmartII”,如图:在数据库FoodmartII 上右键单击,选择【任务】【导入数据】。 如图:在“导入和导出向导”对话框中,数据源选择“Microsoft Access”,单击“文件名”后面的【浏览】按钮,按你的存储路径找到Foodmart.mdb 文件。单击【下一步】。 如图,选择“Microsoft Access”,找到Foodmart.mdb 文件:在“选择目标”部分,注意目标数据库的名称应为刚才建立的“FoodmartII”。如图,选择我刚刚建立的“FoodmartII”数据库:选择复制一个或多个数据库表。 如图,勾选“复制一个或多个数据库表”:在接下来的对话框中选择可能用到的数据表,根据需要勾选。我选择了全部的数据表,并单击下一步,如图:单击【下一步】后,选择“立即执行”,如图:如下图,可看到导入成功,单击【关闭】按钮: 观察数据库引擎中的FoodmartII,我们可以看到数据库中有哪些表,例如account表,category表,currency表等,如图:我们点击cureency表中的索引,可以看到初始时并没有任何索引,如图:右键cuurency表,选择“编辑前200行”,可以看到表中的数据,如图:二、理解索引对查询的影响1.新建查询,在查询窗口中输入一个查询命令。select customer_idfrom customerwhere customer_id6000在【查询】菜单中选择【显示估计的查询计划】,注意观察查询窗口下面的执行计划窗口。如图,表扫描占100%:执行该查

文档评论(0)

tiangou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档