SQL Query Analyzer使用简介
SQL Query Analyzer 是一个图形化的管理工具,主要用于编写、测试Transact-SQL 语句、批处理。系统管理员和开发者通过SQL Query Analyzer 能够同时执行多个查询、查看查询结果、分析查询计划,从而了解如何提高查询执行的性能。从SQL Server Enterprise Manager 可以将其启动。SQL Query Analyzer 提供了以下特性:
∙ 为编写Transact-SQL 语句提供了自由格式的文本编辑器;
∙ 将Transact-SQL 语法用彩代码显示,从而提高了复杂语句的可读性;
∙ 对象浏览和搜索工具使在数据库中寻某一数据库对象变得更为容易;
∙ 包含创建数据库对象的基本语句的模板文件,从而提高了使用Transact-SQL 语句创建数据库对象的速度;
∙ 分析存储过程的调试器;
∙ 结果集可以以表格或文本格式显示;
∙ 图形化的执行计划显示了执行Transact-SQL 的每一个逻辑步骤。
一、配置SQL Query Analyzer
在使用SQL Query Analyzer 之前,首先要对其查询选项进行配置。因为这些选项直接决定了查询的显示信息、查询结果和SQL 语句执行计划的显示格式和内容。配置SQL Query Analyzer 主要有两种方法:一种是通过SQL Query Analyzer, 另一种是通过SET 命令来实现。在这里我们只介绍前一种方法。
首先启动SQL Query Analyzer, 然后在工具栏的Query 菜单下选择Current Connection Properties 菜单项。打开Current Connection Properties 对话框,如图19-7 所示。
其中各选项的含义为:
在使用SQL Query Analyzer 之前,首先要对其查询选项进行配置。因为这些选项直接决定了查询的显示信息、查询结果和SQL 语句执行计划的显示格式和内容。配置SQL Query Analyzer 主要有两种方法:一种是通过SQL Query Analyzer, 另一种是通过SET 命令来实现。在这里我们只介绍前一种方法。
首先启动SQL Query Analyzer, 然后在工具栏的Query 菜单下选择Current Connection Properties 菜单项。打开Current Connection Properties 对话框,如图19-7 所示。
其中各选项的含义为:
∙ Set nocount表示在返回信息中不包括查询语句所影响行数信息。
∙ Set noexec表示编译但不执行语句。
∙ Set parseonly表示解析但不编译或执行语句。
∙ Set concat_null_yields_null表示如果串联中的任何一个操作数为NULL, 则返回值为NUL
L。
∙ Set rowcount表示返回指定行数的查询结果集然后结束查询处理。
∙ Set arithabort表示在查询处理中,如果出现零做除数或运算溢出错误,则终止查询。
∙ Set showplan_text表示显示查询的执行信息。
∙ Set statistics time表示显示解析、编译、执行语句所需要的时间,其单位为微秒。
∙ Set statistics IO表示显示磁盘活动信息。
∙ Set status I/O表示显示执行查询时磁盘活动的状态信息。
∙ Set ansi_default表示按SQL-92 标准设置以下选项。
二、使用SQL Query Analyzer
通常来说,SQL Query Analyzer 主要可以帮助实现以下四大功能:
通常来说,SQL Query Analyzer 主要可以帮助实现以下四大功能:
∙ 执行SQL 语句
∙ 分析查询计划
∙ 显示查询统计情况
∙ 实现索引分析
虽然从外表上看Query Analyzer感觉很像Enterprise Manager,但是Query Analyzer没有和MMC嵌在一起。与Enterprise Manager一样,默认情况下,有一个查询窗口是打开的,这个窗口在主应用程序窗口中,没有被最大化。可以在Query Analyzer中打开多个查询窗口,每个窗口都可用于打开与保存脚本文件。
properties文件用什么打开>unicode码元是什么
点击信息栏允许ie安装activex控件让我们快速游历一下Query Analyzer。通过使用主菜单与工具栏,可以访问Query Analyzer的所有功能。再次说明:快速游历的目的不是对这些功能进行广泛的探讨,而是熟悉这个应用程序。本节以程序主菜单栏上的顺序列出每一项功能。
在File菜单中包含的是一些用来管理数据库连接的选项。如果一开始是从【开始】菜单中打开Query Analyzer的,系统就会提示连接到服务器上。选择菜单选项中的创建新连接也会打开相同的对话框。在File菜单中也有打开和保存SQL脚本的选项。脚本文件是包含SQL命令和表达式的文本文件。
在Edit菜单中包含有标准的剪贴板选项:Cut、Copy和Paste。这些功能在编辑文本时非常有用,它们也可以通过鼠标右键菜单和标准热键来访问。在标准编辑功能下面的 Find、Replace、Go to line和Bookmark功能在调试或者编辑大型SQL脚本时是无价之宝。Edit菜单也包含两个模板选项。第1个选项在查询窗口中插入模板语法,第2个选项可把模板中的占位符替换成合适的值。模板对设计人员来说是个标准的起点。比如,可以建立一个标准模板来创建包含起始块与公司联系信息存储过程。模板是以文本文件格式存储的,文件的扩展名是.TQL,可以在Query Analyzer中创建与保存。许多标准模板随着SQL Server的安装一起安装。
Query菜单包含为连接、执行或者解析活动的查询窗口而更改当前活动数据库的选项。结果可以输出到未格式化的文本、网格或者文本文件中。文本选项使用固定宽度的字体。可变长的列在显示时会将所显示列的内容进行格式化,以最可能大的长度显示。Display Estimated Execution Plan与Show Execution Plan选项将单个的查询操作转换成图形化的图标显示,描述每个步骤间的优先次序和数据流。Current Connection Properties菜单项可设置当前连接的查询行为选项。
android最高版本是多少 在Tools菜单里,可以管理索引与统计信息,并且可以设置程序选项。Manage Indexes选项用于创建与删除索引。Manage Statistics选项用于创建、更新或者删除列的统计数据。在执行查询时,查询优化器使用统计数据来构造执行计划。由这个选项管理的统计数据不是索引统计,而是列的统计。索引统计是SQL Server创建的,用于决定在一个查询中某个索引是否有用。列统计可以由数据库管理员创建,在Auto Create Statistics数据库选项选中时,也可以由SQL Server自动创建。列统计能帮助查询优化器创建优化的查询计划,而不会有因索引导致的开销。更多和这个特殊功能相关的信息,请查阅联机图书中的“统计信息,创建”主题。
下面以一个实际例子来讲解SQL Query Analyzer 是如何实现这些功能,的以及它又是怎样帮助系统管理员或应用程序开发者实现索引分析和查询计划分析。
首先在文本编译器中输入查询语句,然后选择工具栏的Query 菜单下的show execution plan 和show client statistics 选项。接着单击工具栏上Execute Query, 此时在文本编辑器的下半部分的三个标签页上分别显示查询的结果集查,询执行计划以及统计信息。
首先在文本编译器中输入查询语句,然后选择工具栏的Query 菜单下的show execution plan 和show client statistics 选项。接着单击工具栏上Execute Query, 此时在文本编辑器的下半部分的三个标签页上分别显示查询的结果集查,询执行计划以及统计信息。
该图显示了由查询优化器(Query Optimizer) 所决定的查询数据的方法。在这里所使用的图形化执行计划是使用图标而不是表格来代表具体某一语句和查询的执行情况,从而有利于理解执行的详细情形。除此之外,SQL Query Analyzer 还能够指出还应该在哪些列上创建索引以便提高查询性能,以及给出有关非索引列的统计信息。
选中Statistics 标签页,如图19-9 所示。
这些统计信息主要由查询处理器使用,通过统计信息,其能够在查询评估阶段来决定最优的查询策略是什么。在表上创建索引之后,SQL Server 自动将有关索引列分布值的统计信息存储起来,以备查询优化器以后使用。所以,如果某一列的值发生变化,则其最佳的查询策略也将改变,因查询优化器仍使用其存储的统计信息来进行查询决策,从而降低了查询效率。
2.1 SQL脚本和批规则
Query Analyzer可以用两种方式执行SQL。这两种方式都要求先将SQL表达式直接输入到查询窗口中。而后,可以选择执行窗口中的整个脚本,或者只选择脚本中的一部分语句执行。
将使用Query Analyzer编写、执行和以前使用Query Designer一样的查询。在打开Query Analyzer之后,系统就连接到本地数据库上,所指派的当前活动数据库为Northwind。
row函数的功能是什么从Windows的【开始】菜单中打开Query Analyzer。其快捷方式可以在Microsoft SQL Server程序组中到。系统将提示连接数据库服务器。如果未在本地安装数据库服务器,则要选择或者输入服务器名,然后说明是希望使用Windows集成的安全性认证,还是提供用户名和密码。图3-17展示了连接对话框窗口。想要使用集成的安全性认证连接到本地服务器,请在SQL Server下拉列表框中输入点号(.),然后在Connect using选项中选择Windows authentication单选按钮。请注意在标有SQL Server的下拉列表框中有默认的选项,它是一个很不起眼的点号(.),代表本地数据库服务器。点号和多数系统上的(local)、LocalHost的意义是一样的。如果在本地计算机上安装了SQL Server,就不必改变这些设置,直接单击OK按钮。
图 3-17
Query Analyzer是一个多文档界面应用程序,这样的界面中较大的父窗口包含一个或多个子窗口。就如图3-18所示的那样,内部的查询窗口是可自由活动的,可以在父窗口内任意改变位置。在需要管理多个查询或者不同的数据库连接时,这种界面就显得很方便。对于这个例子而言,请将窗口最大化,让它占满所有可用的空间。单击小窗口右上角上带有小矩形图标的最大化按钮,就可以将窗口最大化。
图 3-18
在工具栏的中央有一个下拉列表框。拉开这个列表,就会看到数据库名字,每个数据库名字的左边有一个黄的鼓型图标。不要对它进行任何操作。我只是想让用户知道它的位置在哪儿。请注意,它显示目前正在使用数据库是Master数据库。
有两种方法可以指定想进行操作的数据库。其中一种是从刚才那个列表框中选择一个,另一种是执行SQL的USE (数据库名)语句。在数据库窗口中,输入下列文本:
导航条的制作USE AdventureWorks2000
GO
永远会有一个数据库是处于活动状态的。上述代码将当前活动数据库改为AdventureWork2000。GO语句的意思是,所有GO之上的语句必须执行完毕后,才能执行下面的语句。GO被称为批处理指令(batch directive)。在批处理指令之前或之后的SQL代码被称为批。以后会详细介绍。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论